![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
xml, utf8
Scott Storch © (2012-02-09 12:12:00)как указать кодировку utf-8 для xml.
XMLDoc.Encoding := 'utf-8'; <- Access Violation
XMLDoc.Active := True;
XMLDoc.XML.Text := AnsiToUtf8(S);
Плохиш (2012-02-09 13:11:00) [1]
> Scott Storch © (09.02.12 12:19) [2]
>
> он уже создан
Должен быть ещё и открыт/создан
XMLDoc.Active := true;
Dimka Maslov (2012-02-09 12:43:00) [2]Недопустимый символ это одно, а AV совсем другое. Оно, к слову сказать, вызникает из-за того, что свойство DOMDocument в момент установки кодировки имеет значение nil. Отсюда мораль - надо что-то сначала проинициализировать, а кодировку задавать потом.
Scott Storch (2012-02-09 12:32:00) [3]есть другие
> Либо компонент сильно кривой
Пользуюсь стандартным парсером TXMLDocument. Для теста просто кидаю на форму и пытаюсь назначить значение свойству encoding.
XMLDoc.XML.Text := ANSIToUTF8(S); - здесь после преобразования в значении атрибута может оказаться символ "<". Парсер ругается что это недопустимый символ.
Dimka Maslov (2012-02-09 12:23:00) [4]При неправильном задании значения свойства не должно быть AV. Либо компонент сильно кривой, либо объект создан, но в данной точке переменная XMLDoc не инициализирована (неправильно присвоена), либо объект уже ранее уничтожен. Надо взять и пройтись отладчиком внутрь метода присвоения кодировки и посмотреть что там не так.
Scott Storch (2012-02-09 12:19:00) [5]он уже создан
Dimka Maslov (2012-02-09 12:17:00) [6]А создавать объект XMLDoc кто будет? Пушкин?