4 / 4 / 8
Регистрация: 11.11.2014
Сообщений: 256

Как внести изменения в файл XML?

10.06.2018, 05:03. Показов 4166. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте уважаемые форумчане!

Есть XML файл с ценами. Необходимо внести все изменения между тегами <price> и </price> и измененный файл записать.
Допустим вместо <price> 100 </price> должно записаться <price> 110 </price>.
Каждая цена должна увеличится на 10%.

Я знаю, что в VB есть возможность работать с XML файлами, но с этим я никогда не сталкивался!
Пожалуйста, подскажите как это модно реализовать?

Пробовал закидывать файл в переменную и парсить. Получается с маленьким файлом, но почему-то после сохранения большого файла часть обрезается.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.06.2018, 05:03
Ответы с готовыми решениями:

Как распарсить XML файл и внести в него изменения?
Доброго времени суток. Помогите распарсить XML файл и внести в него изменения. Задача найти в файле все offer с category id=91451 и...

Как внести изменения в XML-файл, не переписывая его
Есть готовый xml файл, надо найти значение и заменить не перезаписывая его полностью, а как?

Как внести изменения в XML файл
Добрый день, не так давно начал изучать C# и возникла проблема при изменении xml файла &lt;?xml version=&quot;1.0&quot;...

3
4 / 4 / 8
Регистрация: 11.11.2014
Сообщений: 256
10.06.2018, 06:36  [ТС]
Вот пример XML файла:
Вложения
Тип файла: rar xxx.rar (67.2 Кб, 32 просмотров)
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16123 / 11247 / 2888
Регистрация: 21.04.2018
Сообщений: 33,073
Записей в блоге: 2
10.06.2018, 12:13
Попробовал - вроде проблем никаких нет.
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Class Form1
    Dim МойXML As XDocument
 
    Private Sub ButtonЧтениеXML_Click(sender As Object, e As EventArgs) Handles ButtonИзменениеXML.Click
        Dim МойXML As XDocument = XDocument.Load(Application.StartupPath + "\xxx.xml")
        Dim СписокТоваров As XElement = МойXML.Element("yml_catalog").Element("shop").Element("offers")
 
        For Each Товар In СписокТоваров.Elements("offer")
            Товар.Elements("price").Value += 10
        Next
        МойXML.Save(Application.StartupPath + "\xxx(Изменённый).xml")
    End Sub
End Class
Только убрал из исходного XML строку
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
0
4708 / 3661 / 857
Регистрация: 02.02.2013
Сообщений: 3,518
Записей в блоге: 2
10.06.2018, 14:12
Лучший ответ Сообщение было отмечено Yury Komar как решение

Решение

Вариант
VB.NET
1
2
3
4
5
6
7
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
    Dim myXML As XDocument = XDocument.Load(IO.Path.Combine(Application.StartupPath, "xxx.xml"))
    For Each pp As XElement In myXML...<price>
        pp.Value = (Val(pp.Value) + 0.1 * Val(pp.Value)).ToString
    Next
    myXML.Save(IO.Path.Combine(Application.StartupPath, "xxxNew.xml"))
End Sub
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.06.2018, 14:12
Помогаю со студенческими работами здесь

Как внести изменения в exe-файл, не имея исходников
Есть программа . Нужно изменить в ней значение 4000000 в текстовом поле и далее уже делать исправления в коде program.cs. Но исходного...

Как не распаковывая архив прочесть файл из него и внести изменения?
Средствами System.IO.Compression создал архив &quot;arhiv1.zip&quot; с текстовым файлом &quot;file1.txt&quot;. Вопрос... Как не распаковывая архив в файл,...

Внести изменения в файл app.config
Здравствуйте. Настройки программы хранятся в файле app.config. Среди них, на пример, есть некий ip адрес. У пользователя должна быть...

Как внести через vim изменения в файл автоматически?
Добрый день всем! Есть несколько вопросов: 1) Как с помощью редактора vim из скрипта открыть файл, затем произвести изменения в...

Файл: Открыть файл в режиме «а+», внести изменения, характеризующие этот режим.
Открыть файл для записи и записать в него произвольную информацию. Закрыть файл. Открыть его же в режиме «а+», внести изменения,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
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
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами 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/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru