|
|
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
Привет всем. В C++ Builder я распарсиваю XML-файл с помощью DOM-парсера. <?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"> <Styles> <Style ss:ID="Default" ss:Name="Normal"> <Alignment ss:Vertical="Bottom"/> </Style> <Style ss:ID="s29"> </Style> <Style ss:ID="s30"> <Font x:CharSet="204" x:Family="Swiss" ss:Bold="1"/> </Style> </Styles> <Worksheet ss:Name="LIST1"> <Table ss:ExpandedColumnCount="10" ss:ExpandedRowCount="201" x:FullColumns="1" x:FullRows="1"> <Column ss:AutoFitWidth="0" ss:Width="123.75"/> </Table> </Worksheet> </Workbook> Затем вставляю свои элементы по стандартному принципу pRow = doc->createElement(L"Row"); pTAB->appendChild(pRow); ну и т.п. НО!!! когда я сохраняю результат в другой файл, у первого же вставленного мной элемента автоматически генерируется пустой аттрибут xmlns <Row xmlns=""> Подскажите, как от него избавиться - он очень мешает, так как мне потом надо открыть этот файл в Excel ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 09:07:09 |
|
||
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
это не атрибут, это пустое пространство имён, оно нужно потому, что ты создаёт элементы в пустом пространстве имён. Надо создавать в пространстве имён urn:schemas-microsoft-com:office:spreadsheet ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 13:06:48 |
|
||
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
Ну да, про пространство-то я понял... А вот КАК создать элемент в этом пространстве? Почему-то не могу найти никаких метод, задающих его! Ткине, плис, в нужное место, а то я еще новичок в этой области. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 13:25:50 |
|
||
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
если у тебя msxml, то читай про createNode ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 13:44:29 |
|
||
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
Теперь создаю так pEL = doc->createNode( Variant("Element"), L"Row", L"urn:schemas-microsoft-сom:office:spreadsheet"); печатает просто <Row>, то есть пространство по умолчанию urn:schemas-microsoft-com:office:spreadsheet вроде бы используется. Но при открытии с помощью Excel - все равно пустая таблица. Может надо как-то указать по другому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 14:58:08 |
|
||
|
Навязчивый атрибут xmlns
|
|||
|---|---|---|---|
|
#18+
On Thu, 01 Nov 2007 14:58:08 +0300, Хал <nospam@sql.ru> wrote: > Автор: Хал > Теперь создаю так > pEL = doc->createNode( Variant("Element"), L"Row", > L"urn:schemas-microsoft-сom:office:spreadsheet"); > > печатает просто <Row>, то есть пространство по умолчанию > urn:schemas-microsoft-com:office:spreadsheet > вроде бы используется. > > Но при открытии с помощью Excel - все равно пустая таблица. > > Может надо как-то указать по другому? > Тема Ответить Сообщение Создать нужный файл в Экселе и сравнить с полученным своим? -- Здесь у нас туманы и дожди, здесь у нас холодные рассветы, Здесь на неизведанном пути ждут замысловатые сюжеты! Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2007, 17:36:30 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34910538&tid=2027875]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 321ms |

| 0 / 0 |
