Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

xml, loadxml   Найти похожие ветки 

 
FS   (2012-06-07 12:27) [0]

Есть 5 xml-файлов в разных кодировках:

<A>
"Тест"
<C>"Test"</C>
<D>"123"</D>
</A>

Успешно загружаются только содержимое файлов в ANSI и UTF8WithoutBOM. При загрузке содержимого файла в кодировке UTF-8 и ост. выкидывает ошибку - ошибка в элементе верхнего уровня документа. Как загружать содержимое файла в различных кодировка?


procedure TForm1.Button1Click(Sender: TObject);
var
 Doc: IXMLDOMDocument;
 SL: TStrings;
begin
 SL := TStringList.Create;

 //SL.LoadFromFile("D:\ANSI.xml");

 //SL.LoadFromFile("D:\UTF8WithoutBOM.xml");

 SL.LoadFromFile("D:\UTF8.xml");

 //SL.LoadFromFile("D:\UCS-2BE.xml");

 //SL.LoadFromFile("D:\UCS-2LE.xml");

 Doc := CoDOMDocument.Create;

 Assert(Doc.loadXML(SL.Text), DOC.parseError.reason);

 SL.Free;
end;


 
FS   (2012-06-07 12:28) [1]

поправлю

<A>
"Тест"
<C>"Test"</C>
<D>"123"</D>
</A>


 
FS   (2012-06-07 12:29) [2]

<A>
<E>"Тест"</E>
<C>"Test"</C>
<D>"123"</D>
</A>


 
Омлет ©   (2012-06-07 13:05) [3]

SL.Text - это разве WideString?


 
Омлет ©   (2012-06-07 13:08) [4]

Точнее так: StringList не умеет корректно загружать юникод-файлы.


 
Омлет ©   (2012-06-07 13:09) [5]


> StringList

*TStrings


 
FS   (2012-06-07 15:20) [6]

Суть проблемы - GET-запрос к серверу возвращает XML, которая сохраняется в переменную типа string. Дальше эта переменная передается в качестве парамера в метод loadXML (IXMLDOMDocument). loadXML завершается с ошибкой (возвращает False). Такое происходит очень редко. В чем может быть проблема?


 
Омлет ©   (2012-06-07 15:43) [7]


> В чем может быть проблема?

Зависит от ошибки.


 
Cobalt ©   (2012-06-07 15:45) [8]

пиши лог с содержимым строки (только в Юникод-поддерживающий лог, типа OutputDebugStringW)
И уже этот лог имеет смысл рассматривать



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.072 c
15-1345581002
Юрий
2012-08-22 00:30
2013.03.22
С днем рождения ! 22 августа 2012 среда


15-1339590107
Хригорий
2012-06-13 16:21
2013.03.22
Что такое нативный язык программирования?


15-1341124080
Mihaker
2012-07-01 10:28
2013.03.22
Win7 ShellServiceObjectDelayLoad


15-1352449269
tur0k_mag
2012-11-09 12:21
2013.03.22
cxTreeList + поле типа Combobox


2-1330521256
Мальчик
2012-02-29 17:14
2013.03.22
Delphi - ADO - DBF (Ошибка синтаксиса)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский