Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/16: Рейтинг темы: голосов - 16, средняя оценка - 4.88
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145

Формирование данных xml, обработка текста

04.10.2011, 15:32. Показов 3130. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго всем дня!
Подскажите как вести обработку данных внутри текстового файла, (здесь в xml). Допустим создал иксемельку записал там кучу тегов, кучу информации, теперь хочу все попеременять:
нужно допустим найти тег: <искомый тег> значение </искомый тег> изменить данные внутри. Притом он в свою очередь находится внутри <надтег>Номер надтега<искомый тег> </искомый тег></надтег>. В общем как обратить к данным в тегах, найти, извлеч, поменять..
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.10.2011, 15:32
Ответы с готовыми решениями:

Обработка структуры и содержимого текста отличного от XML средствами XML
Есть текст, в котором есть структура и ключевые символы придуманные какими-нибудь программистами для своего проекта. Т.е. свой язык....

Загрузка данных из базы firebird и формирование XML файла
Задача считать данные из базы с расширением gdb после чего загрузить их в XML файл. Помогите пожалуйста как это сделать??

Формирование ряда массивов на основании загруженных из xml данных
Приветствую всех! Делаю парсинг данных из файла xml с помощью функции .each(function() Получаю три набора данных. Как можно упорядочить...

10
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
04.10.2011, 15:57
am-wrag, посмотри эту тему - Работа с xml
1
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145
04.10.2011, 16:04  [ТС]
Вроде Xml.Linq то что надо, где можно поподробней почтитать про библиотеку?
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
04.10.2011, 16:10
am-wrag, смотри соответствующий раздел на msdn
1
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145
10.10.2011, 11:54  [ТС]
Уже наверн с неделю потихоньку постигаю LINQ to XML, но на msdn слишком много всего, у меня к сожалению очень мало времени для обучения. Eugene22,может помошь мне чуток? Я приведу несложный запрос, а ты если не трудно краткий код с решением. Такий пример мне очень поможет.
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
10.10.2011, 11:58
am-wrag, смотря какой пример. у меня тоже немного времени
0
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145
10.10.2011, 12:21  [ТС]
Как создать, загрузить, сохранить я уже разобрался, проблема с операторами запроса, насколько я понял все сделано на базе запросов SQL
Вот пример кода
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<DOG_INConverter>
    <DOG_INList>
        <DOG_IN>
            <num_dog>1111</num_dog>
            <d_zajav>2011-09-27T00:00:00</d_zajav>
            <n_strach>Тихонов Валерий Витальевич</n_strach>
        </DOG_IN>
        <DOG_IN>
            <num_dog>2222</num_dog>
            <d_zajav>2011-09-26T00:00:00</d_zajav>
            <n_strach>Мирзоева Галина Викторовна</n_strach>
        </DOG_IN>        
    </DOG_INList>
</DOG_INConverter>
Я хочу поменять то что внутри <n_strach></n_strach> но только там где <num_dog>1111</num_dog>, и хочу добавить ещё лист внутрь <DOG_INConverter></DOG_INConverter>
XML
1
2
3
4
5
<DOG_IN>
            <num_dog>3333</num_dog>
            <d_zajav>2011-09-26T00:00:00</d_zajav>
            <n_strach>Мирзоев Толибджон Мамараджабович</n_strach>
        </DOG_IN>
С удовольствием приму любую помощь или совет к действиям

Добавлено через 5 минут
У меня единственное предположение с которым я могу справиться сам дак это каждый раз очищать xml полностью и заменять его новыми данными, благо шаблон к заполнению всегда одиноковый...
Все же буде очень обидно если я не разберусь с кодом запроса и апдейта тегов...
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
10.10.2011, 12:54
am-wrag, на самом деле все примитивно просто
возьмем тот же xml-файл
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="utf-8"?>
<Root>
  <Country name="Russia">
    <Capital>St.Petersburg</Capital>
    <Population>142 000 000</Population>
  </Country>
  <Country name="USA">
    <Capital>Washington</Capital>
    <Population>280 000 000</Population>
  </Country>
  <Country name="Germany">
    <Capital>Berlin</Capital>
    <Population>80 000 000</Population>
  </Country>
</Root>
и допустим мы хотим поменять население у того элемента, у которого столица - Спб. Плюс надо добавить новую страну, допустим
XML
1
2
3
4
<Country name="France">
    <Capital>Paris</Capital>
    <Population>60 000 000</Population>
  </Country>
тогда код будет выглядеть примерно так
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim newItem As XElement = <Country name="France">
                                      <Capital>Paris</Capital>
                                      <Population>60 000 000</Population>
                                  </Country>
        
        Dim fileName As String = "D:\Exp\ccc.xml"
        'загрузка документа
        Dim xdoc As XDocument = XDocument.Load(fileName)
        
        For Each xe As XElement In xdoc.Element("Root").Elements("Country")
              
            If xe.Element("Capital").Value = "St.Petersburg" Then
                xe.Element("Population").Value = "150 000 000"
            End If
        Next
 
        xdoc.Element("Root").Add(newItem)
 
        xdoc.Save(fileName)
1
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145
10.10.2011, 12:57  [ТС]
Да, просто и доходчиво!
А тоже самое только с оператором where никак? мне кажется нет мсысла цикл делать, если можно поставить изначальное условие.
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
10.10.2011, 13:16
Цитата Сообщение от am-wrag Посмотреть сообщение
А тоже самое только с оператором where никак? мне кажется нет мсысла цикл делать, если можно поставить изначальное условие.
Можно из запросами - то же самое будет так
VB.NET
1
2
3
4
5
6
7
Dim el As IEnumerable(Of XElement) = From xe In xdoc.Element("Root").Elements("Country")
                 Where xe.Element("Capital").Value = "St.Petersburg"
                 Select xe
 
        For Each el1 In el
            el1.Element("Population").Value = "110 000 000"
        Next
Проблема только в том, что запрос возвращает коллекцию, даже если в этой коллекции только один предмет. А через циклы просто оно нагляднее. Запросы хороши когда нужны сложные запросы. Например, я как из одного многомегабайтного xml-файла делал свою версию со своими атрибутами, но с теми же значениями и там большой уровень вложенности элементов друг в друга был. Запрос вышел строк на 15. А тут структура документа довольна проста. Запросы можно и не использовать.
1
 Аватар для am-wrag
11 / 11 / 2
Регистрация: 17.02.2011
Сообщений: 145
10.10.2011, 13:22  [ТС]
Пример я сделал сам, чтобы было легче понять в чем вопрос, реальный xml намного массивней и сложней в структуре. Менять придется кучу значений в разных местах, поэтому я нехочу каждый раз при апдейте прогонять весь обьем инофрмации.
В любом случае все что мне надо я увидел, спасибо Eugene22, ты помог сэкономить кучу моего времени!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.10.2011, 13:22
Помогаю со студенческими работами здесь

Формирование, сортировка и обработка динамических структур данных.
Требуется решить задачу формирования, сортировки и обработки динамических структур данных. Требуется создать динамический массив...

Обработка данных XML-файла
Добрый день! В очередной раз застряла на ерундовом вопросе, надеюсь, что смогу получить у Вас совет. Имеется XML - файл, в котором...

Обработка XML и выведение данных в таблицу
Добрый день! Дорогие форумчане, есть задание Составить и вывести на экран список работников (фамилия, имя, отчество, ИНН) имеющих...

Парсинг XML, обработка данных по некоторому условию
Всем привет! Извиняюсь, если такой вопрос уже рассматривался на форуме, но я даже не знаю, как у поисковика спросить правильно ) Вобщем,...

Обработка и изъятие данных из XML документа средствами PHP
Объясните работу обработки XML документа с помощью PHP Например: &lt;author&gt;А.С. Пушкин&lt;/author&gt; И мне надо взять это имя из...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru