Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Имею желание править программно XML, сгенерированный Excel'ем. Там типа такое: <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40"> ... <Worksheet ss:Name="Sheet1"> <Table ss:ExpandedColumnCount="4" ss:ExpandedRowCount="3" x:FullColumns="1" x:FullRows="1"> <Column ss:Index="2" ss:AutoFitWidth="0" ss:Width="84"/> <Column ss:AutoFitWidth="0" ss:Width="76.5"/> <Row> <Cell ss:Index="2"><Data ss:Type="String">Проект 1</Data></Cell> <Cell><Data ss:Type="String">Проект 2</Data></Cell> <Cell><Data ss:Type="String">Итого</Data></Cell> </Row> ... Ну никак у меня не получается выбрать ноду Cell. Убираю пространства имён - всё нормально. Вставляю хоть одно - не работает. Примеры по XmlNamespaceManager применить к данному случаю почему-то не получается. Может кто снизойдёт до меня убогого и напишет, как мне применить XmlElement.SelectNodes(), чтобы выбрать все ячейки в документе? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2005, 18:38 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
А ты строишь дерево XML в памяти? Самый медленный способ - загрузить пропарсированный XML документ в память, перейти к нужному узлу, прочитать/изменить этот узел (все пространства имен сохранятся!), и записать файл назад... Либо XmlReader/XmlWriter - намного быстрее, но сложнее обработка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2005, 21:47 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Об этом тоже можно подумать. Но в данном случае для меня скорость не имеет решающего значения. Важнее удобство программирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2005, 12:22 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Абориген, хорошо тебе, раз для тебя важнее удобство программирования ;-) Но именно Excel-файлы в формате XML довольно большие и их парсинг в дерево не очень быстрый. Лично я для построения дерева в памяти использовал IDOMDocument , и просто перемещался по узлам. Не забывай, что просто по имени Cell ты не можешь обратится, т.к. число узлов с этим именем у узла Row может больше одного, и интерфейс не поймет, какой именно узел тебе нужен, согласен? :-) Думаю, что тебе нужно просто перебирать узлы Cell , анализировать атрибут ss:Index и уже его значению принимать решение о модификации узла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 08:29 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Спасибо, это всё безусловно интересно, но я спрашиваю не о том. Вопрос, как использовать XmlNamespaceManager и как построить выражение XPath, чтобы выбрать хоть какие-нибудь ноды с помощью SelectNodes(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 11:16 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Приветствую Приведите полный XML файл приложением к сообщению. Я попытаюсь помочь. С уважением, Мартин Рахманов http://jimmers.russia.webmatrixhosting.net/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2005, 17:35 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Да это собственно просто таблица Excel, сохранённая как XML. Вопрос в том, как средствами .NET её редактировать. А точнее, с помощью выражения XPath выбрать какую-нибудь ячейку и поменять её значение. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2005, 18:08 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Вот например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2005, 18:09 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
не знаю как насчёт .NET, а xpath нужно примерно такое: /Workbook/Worksheet[1]/Table/Row[2]/Cell[1]/Data/text() (берёт текст первой ячейки второго ряда первого листа) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2005, 18:29 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Собственно, верно заметил предыдущий оратор - XPath будет такой: Код: plaintext Соответственно, код на C# для выборки: Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2005, 19:14 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Прояснилось. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2005, 10:43 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Ух ты! А в DOM такая штука разве есть? Код: plaintext 1. 2. У меня java, jaxp. Что-то я там не нахожу метода, который принимал бы xPath... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2005, 19:10 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
это есть в msxml, интерфейс IXMLDOMNode. ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 15:16 |
|
||
|
Помогите с пространствами имён
|
|||
|---|---|---|---|
|
#18+
Сразу оговорюсь, что я не силён в Java. Но такой код будет работать: Код: plaintext 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. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 17:57 |
|
||
|
|

start [/forum/topic.php?fid=14&msg=33353905&tid=1334954]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 431ms |

| 0 / 0 |
