|
Изменение текста в XML
|
|||
---|---|---|---|
#18+
День добрый, уважаемые форумчане! Столкнулся с проблемой изменения xml(до этого дела с xml не имел)... В принципе идея не нова, но найти решение я пока не смог(хотя уверен оно уже не раз здесь обсуждалось). Дружу Access с сторонней прогой (если это имеет какое-то значение, то вот и вот )...и всё у меня вроде бы получилось и записи в базу этой проги идут на ура, но, как всегда затуп случился на довольно простом моменте У проги этой есть файл settings.xml - в котором указывается среди прочего содержимое окна при открытии(думаю идея понятна - внёс данные в базу, хочу что б эти данные отобразились при открытии программы). Данные указываются между тегами <session> </session>, то есть мне надо заменить весь текст между тегами . Если есть необходимость, то вот выдержка(каждый <document></document> - это новая вкладка на экране(их может быть сколько угодно, но мне надо не более двух), <active>00HQ13800JrY</active> - это ID объекта на вкладке которого будет фокус при открытии ) Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Пробую открывать xml как текст используя FileSystemObject, копирую в буфер всё содержимое,пытаюсь заменить и записать обратно в файл... Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Уверен, что есть путь логичнее, поэтому пока ищу решение - прошу помощи. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2015, 11:50 |
|
Изменение текста в XML
|
|||
---|---|---|---|
#18+
Mina Anna Mazzini, Да я бы может и рад был бы разобраться с xml в подробностях, но сейчас совершенно не тот случай, когда надо знать полностью предметную область. И времени на разбор надо от нескольких дней до недель. И ведь по сути в твоих словах есть истина автор Mina Anna MazziniНо тебе-то нужна лишь заглушка, костылик... А просить помощи я пришёл именно потому что не работает моя конструкция - не могу я додуматься как мне организовать вот таким образом автор Mina Anna Mazziniнашел бы открывающий тег, потом закрывающий, считал бы все до и все после, вставил между ними свое и записал Чего-то я в обработке текстовых файлов недопонимаю...то есть я вижу что нужно нечто вроде SQL'ного Код: sql 1.
но в конкретных условиях не могу реализовать (или знаний не хватает или мозгов :-)) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2015, 15:15 |
|
Изменение текста в XML
|
|||
---|---|---|---|
#18+
автор Agapov_stas Тут есть пару вариантов. Вот спасибо! Добавил в закладки, на досуге разберу. На данный момент решил таким образом Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Это полностью выполняет текущие задачи(просто подмена текста), сейчас сформирую строку для замены и проверю работает ли это на практике. автор Mina Anna Mazziniне заморачивайся. Оставляй Replace, хоть он мне и не нравится совсем. Ну заменим мы его на два Instr, что немногим лучше. Читать-то файл мы можем лишь с начала. Получив пойнтеры на откр-закр теги, все равно придется делать Skip чтобы концовку прочитать. Стоит игра свеч? Я хотел было по строкам читать, но хорошо, что сам же и оговорился выше - расчитывать на концы строк - значит реализовать сугубо частный случай. Все сугубо умозрительно. Пока никто предметно не отписался :) ну без двух Instr (у меня пока вообще их 3...но это я поправлю) было никак не обойтись, потому как количество содержимого между тегами может различаться от 9 символов до > 1000... вроде код очевидный, но почему-то вчера составить не вышло(наверное надо завязывать работать по выходным :-)) Благодарю за помощь-консультацию :-)! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.10.2015, 09:55 |
|
|
start [/forum/search_topic.php?author=pvshura&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 705ms |
total: | 883ms |
0 / 0 |