Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/29: Рейтинг темы: голосов - 29, средняя оценка - 4.86
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 34

Создание XML файла из txt

08.07.2011, 05:20. Показов 5384. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет!

У меня есть файл: Record.20110701235900, а в нем текст:
-------- 01/04/11 00:30:00
RECORD RESTART

-------- 01/04/11 07:41:07 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2591027
00:00:20 CALL RELEASED

-------- 01/04/11 07:41:28 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2275524
00:00:06 CALL RELEASED

-------- 01/04/11 07:41:44 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2275524
00:00:06 CALL RELEASED

-------- 01/04/11 08:07:20 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2
00:00:03 CALL RELEASED

-------- 01/04/11 08:07:25 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2275524
00:00:14 CALL RELEASED

-------- 01/04/11 08:34:53 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2591027
00:00:09 CALL RELEASED

-------- 01/04/11 08:36:09 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2591027
00:00:21 CALL RELEASED

-------- 01/04/11 08:38:13 LINE = 0016 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2591027
00:00:22 CALL RELEASED
...этот файл мне необходимо преобразовать в Xml формат таким образом:

Код XML

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<aprel>
   <1 число>
        <время>
              <Line> ... </Line>
              <STN> ... </STN>
              <BC> ... </BC> 
              <Call> ... </Call>
              <digits> ...</digits>
              <number> ... </number>
              <time call released> ... </time call released>
        </время>
        <время>
              <Line> ... </Line>
              <STN> ... </STN>
              <BC> ... </BC> 
              <Call> ... </Call>
              <digits> ...</digits>
              <number> ... </number>
              <time call released> ... </time call released>
        </время>
        <время>
              <Line> ... </Line>
              <STN> ... </STN>
              <BC> ... </BC> 
              <Call> ... </Call>
              <digits> ...</digits>
              <number> ... </number>
              <time call released> ... </time call released>
        </время>
   </1 число>
   <2 число>
        <время>
              ...
   </2 число>
</aprel>
... и тд.

Помогите пожалуйста сделать выборку! я хочу это сделать регулярными выражениями, но это наверное будет антипроизводительно. Может кто знает другой способ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.07.2011, 05:20
Ответы с готовыми решениями:

Создание Xml-файла
Здравствуйте! Имеется таблица Dish с полями: IdDish, Name, IdTypeDish, Description.... Где IdTypeDish- внешний ключ, а при просмотре...

Создание XML файла из выгруженных данных
Всем привет, выручайте. Нужно из выгрузки из бд создать XML файл. Например в таблице поля nomer; firstname, secondname; lastname; data. А...

Создание форм из txt файла?
Пр: Есть txt файл, в нем описание формы их имена. Вопросы: Как правильно заполнить этот txt файл? Я думаю: Описание формы Имя...

4
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
08.07.2011, 10:31
Почему антипроизводительно????? Делайте регулярным выражением, никто не запрещает. Не нравиться стандартная библиотека регекспов - возмите другую. для .NET их хватает. Сплитом по пробелам , например, будет только тяжелее разбирать.
0
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 34
08.07.2011, 13:27  [ТС]
Вот в этом помощь и необходима. я нарыл статью про регулярные, начал делать, но столкнулся с проблемкой: есть логи в нутри которых 1 строка, а есть в которых их штуки 3 и еще значений на них по нескольку...

...а так же я не знаю как обработать пробелы, считать их что ли и как то отобразать в выражении??

Добавлено через 1 час 47 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
 XElement xml = new XElement("KATALOG",
                                       new XElement("Year", new XAttribute("year", dateSplit[1]),
                                            new XElement("Mount", new XAttribute("mount", dateSplit[2]))));
                                        //XElement xml2=new XElement("Date", new XAttribute("date",Data),
            XElement date = xml.Element("Mount");
            foreach (Match m in coll)//Беру кучу значений из нескольких текстовых файлов
            {
               date.AddAfterSelf(new XElement("Date",m.Value.Trim()))//пытаюсь вставить их после "Mount" говорит ///Ссылка на объект не указывает на экземпляр объекта.
            }
            System.IO.StreamWriter file = new StreamWriter("File.XML");
            xml.Save("dataSet1.xml");
            richTextBox1.Text = xml.ToString();
date.AddAfterSelf(new XElement("Date",m.Value.Trim()));
Ссылка на объект не указывает на экземпляр объекта.
без конструкции foreach... создает нормально, так что там врядли ошибка
Где ошибка? понять не могу, на MDSN так же написано!
0
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
08.07.2011, 16:03
Посмотрите в дебаге, может в coll в Match null? В каком нибуть поле?
0
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 34
14.07.2011, 07:55  [ТС]
Не, там ошибки точно нет.

может кто знает как правильно запрос сделать чтобы брать весь текст из этого
-------- 01/07/11 00:30:00
RECORD RESTART

-------- 01/07/11 08:01:03 LINE = 0020 STN = 1007
BC = SPEECH
00:00:00 OUTGOING CALL
DIGITS DIALED 2591027
00:00:15 CALL RELEASED

-------- 01/07/11 08:01:19 LINE = 0020 STN = 1007
чтобы выборка была от -------- до следующего -------- например чтобы это предстало в виде:
01/07/11 00:30:00 RECORD RESTART
01/07/11 08:01:03 LINE = 0020 STN = 1007 BC = SPEECH 00:00:00 OUTGOING CALL DIGITS DIALED 2591027 00:00:15 CALL RELEASED

из строки мне кажется мне будет проще значения брать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.07.2011, 07:55
Помогаю со студенческими работами здесь

Создание форм из txt файла?
Пр: Есть txt файл, в нем описание формы их имена. Вопросы: Как правильно заполнить этот txt файл? Я думаю: Описание формы Имя...

Динамическое создание TreeViewer из XML файла
Всем доброго времени суток! Недавно появилась задача - сформировать на web странице TreeViewer с checkBox-ами из XML файла. Найти решение...

Создание XML файла из случайно перемешанных строк txt файла
Всем привет! Помогите составить программу : В файле (.txt) через пробел записаны &quot;Страна&quot; &quot;Город&quot; ФИО...

Создание xml файла
Запускаю код из MSDN, ном почему вылетает исключение, что файл не найден using System; using System.Xml; using...

Программное создание XML-файла
Здравствуйте уважаемые форумчане! Необходимо программно создать файл следующего вида: Как программно правильно его создать? Я делал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru