Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   xml и html enities (http://www.flasher.ru/forum/showthread.php?t=109348)

me2 12.03.2008 20:02

xml и html entites
 
Я медленно приближаюсь к мозговому коллапсу. Надо с этим что-то делать. Причина в следующем:
есть xml файл, (внутри цэ-даты могут быть какие угодно теги):
Код:

<xml>
<chld><![CDATA[b>testing</b>]]></chld>
</xml>

и есть as3 парсер в котором собсна и кроется вся моя печаль:
Код:

var res:XMLDocument=new XMLDocument()
res.ignoreWhite=true
res.parseXML(str)
var endres:Array=xmlToArray(res.firstChild)

Переменная str это String в которую залился внешний xml файл.

Работает всё просто прелестно, один минус - этот parseXML превращает < > " ' в enities. И ему пофигу походу на цэ-дату и на то что там трогать как раз таки ничего не нужно. Как бы это дело обойти -учитывая что функцию xmlToArray трогать категорически запрещается.

Вобщем на текущий момент, если у меня есть чёта типа такого: var xml:XML=new XML(str), то как мне из этого создать рутовую ноду которую я отдам дальше на растерзание?

p.s.
enities = entites

etc 12.03.2008 21:22

А что такое enities? Посмотрите в словаре, как пишется. И чем не устроил обычный XML, а не ущербный XMLDocument?

me2 13.03.2008 00:20

Странный вопрос...
entity это мета представления этих символов < > " ; = &gt; &lt; &quot; и так далее. parseXML автоматом переводит все внутренние теги в их entites. дубль два - можно это обойти?
XML - устраивает, дубль два - как создать XMLNode из рутового элемента?
p.s.
Чем ущербен XMLDocument?

etc 13.03.2008 01:03

Цитата:

Сообщение от me2
Странный вопрос...
entity это мета представления этих символов < > " ; = &gt; &lt; &quot; и так далее.

Вы написали другое слово перед этим, поэтому и вопрос такой.

Цитата:

Сообщение от me2
parseXML автоматом переводит все внутренние теги в их entites. дубль два - можно это обойти?

В случае с XMLDocument вам нужен nodeValue.

Цитата:

Сообщение от me2
XML - устраивает, дубль два - как создать XMLNode из рутового элемента?
p.s.
Чем ущербен XMLDocument?

E4X просто удобнее, причем значительно, чем старый XMLDocument (он же XML в предыдущих версиях AS).

wvxvw 13.03.2008 01:12

XMLDocument не импортируется по умолчанию. Это уже большой минус. Т.е. Класс XML хотите вы того или нет будет в проекте обязательно, а вот XMLDocument можно туда не тащить. (Т.е. файл с использованием XMLDocument будет весить больше, не на много, но всетаки)

iNils 13.03.2008 01:14

Цитата:

Сообщение от wvxvw
XMLDocument не импортируется по умолчанию. Это уже большой минус. Т.е. Класс XML хотите вы того или нет будет в проекте обязательно, а вот XMLDocument можно туда не тащить. (Т.е. файл с использованием XMLDocument будет весить больше, не на много, но всетаки)

Он, что не вшит в плеер?

etc 13.03.2008 01:15

Цитата:

Сообщение от wvxvw
XMLDocument не импортируется по умолчанию. Это уже большой минус. Т.е. Класс XML хотите вы того или нет будет в проекте обязательно, а вот XMLDocument можно туда не тащить. (Т.е. файл с использованием XMLDocument будет весить больше, не на много, но всетаки)

Откуда такая информация?

BlooDHounD 13.03.2008 02:23

__etc, информация может и не откуда, но это правда :)

me2 13.03.2008 02:41

Пришлось переписать чужой код, теперь везде :XML, всё работает. Осталось получить благодарность, чем и займусь.
Выводы.
parseXML - зло.
XMLDocument - не кошерно потому как надо импортировать или что там
E4X - заставляет считать себя удобней. Пытаюсь согласится.

P.s.
Уже не принципиально, но всёж.
Цитата:

В случае с XMLDocument вам нужен nodeValue
у меня и был nodeValue. Только с "экранированными" символами. Экранировал сам механизм parseXML, и вопрос заключался в том как это обойти, не переписывая все механизмы, чёрти знает как работающие.

etc 13.03.2008 09:51

Цитата:

Сообщение от BlooDHounD
__etc, информация может и не откуда, но это правда :)

С этого места поподробнее, пожалуйста.


Часовой пояс GMT +4, время: 10:00.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.