|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
Не могу разобраться с декларацией кодировки в заголовке XML сообщения. Создаю объект: oXMLDom=CREATEOBJECT("Microsoft.XMLDOM") oXMLDom.async ="false" oXMLDom.setProperty("SelectionLanguage", "XPath") Затем создаю шапку XML с указанием кодировки: pi=oXMLDom.createProcessingInstruction("xml", ' version="1.0" encoding="Windows-1251"') oXMLDom.insertBefore(pi, oXMLDom.childNodes.item(0)) После чего произвожу наполнение DOM документа элементами и аттрибутами. HEAD=oXMLDom.createElement('HEAD') oXMLDom.appendchild(HEAD) HEAD_ATTR1=oXMLDom.CreateAttribute('ATTR1') HEAD_ATTR1.value='VALUE1' HEAD.setAttributeNode(HEAD_ATTR1) CHILD1=oXMLDom.createElement('CHILD') HEAD.appendchild(CHILD1) Далее, для того чтобы записать DOM-документ в строковую переменную, использую следующие команды: str=oXMLDOM.getElementsByTagName('*') lcXML=str.item(0).parentnode.XML ? lcXML В результате, на выходе получаю XML-строку, но с шапкой без указания кодировки: <?xml version="1.0"?> <HEAD ATTR1="VALUE1"> <CHILD/> </HEAD> Что делаю не так? Где ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 18:25 |
|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
> Автор: Victor L. > Что делаю не так? Где ошибка? Наверное от того, что пытаешся вствить ПЕРЕД первым узлом, которого нет. Правда это на VB6, но хмл получается с кодировкой Код: plaintext 1. 2. 3.
Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 18:59 |
|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
Игорь Горбонос Нет, документ формируется правильно. Если использовать кривое решение: oXMLDom.save('C:\1.xml') t=FILETOSTR('C:\1.xml') ? t То на выходе получаю правильную шапку: <?xml version="1.0" encoding="Windows-1251"?> <HEAD ATTR1="VALUE1"> <CHILD/> </HEAD> Как вывести весь DOM-документ в строковую переменную без сохранения xml файла на жёсткий диск? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2010, 19:13 |
|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
Как мне кажется, с этим ничего не поделаешь. Какая-то фича отображения содержимого XML. Даже при прямой загрузке из файла все-равно не отображается Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2010, 11:09 |
|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
ВладимирМ А какие иные варианты решения могут быть? Необходимо указание кодировки, иначе в сторонней программе вместо русских букв - кракозябры. Сохранение файлов на жёсткий диск каждого запроса для ВебСервиса выглядит малореальным. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2010, 12:01 |
|
Encoding XML и FoxPro
|
|||
---|---|---|---|
#18+
Можно попробовать использовать Stream: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2010, 15:16 |
|
|
start [/forum/topic.php?fid=41&fpage=104&tid=1585536]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 347ms |
total: | 505ms |
0 / 0 |