Если делать всё по доке http://wiki.freepascal.org/XML_Tutorial#Examples , то всё ок работает.
А если в TDOMElement(parentNode).SetAttribute('id', '001'); подсовывать не 'id' и '001', а переменные типа string то падает, т.е. аля сегментайшен файулт. Как с этим бороться?
xml - падает...
Модератор: Модераторы
yantux писал(а):Если делать всё по доке http://wiki.freepascal.org/XML_Tutorial#Examples , то всё ок работает.
А если в TDOMElement(parentNode).SetAttribute('id', '001'); подсовывать не 'id' и '001', а переменные типа string то падает, т.е. аля сегментайшен файулт. Как с этим бороться?
Если у тебя строковые переменные пусты то будет эксцепшен.
-
yantux
- постоялец
- Сообщения: 133
- Зарегистрирован: 29.10.2007 15:02:33
- Откуда: Санкт-Петербург
- Контактная информация:
В данном случае падало, потому что у ктроки была по видимому не корректная длина и поэтому захватывало левые символы после конца строки. А так xml работает, надо разбираться почему портится длина строки.
Добавлено спустя 2 часа 17 минут 4 секунды:
xml падал, потому что в строке были русские буквы utf8 ессно, в окошках эти же буквы отображаются корректно. Т.е. при работе с xml я ограничен использованием только английских букв? Это правильно?
Добавлено спустя 2 часа 17 минут 4 секунды:
xml падал, потому что в строке были русские буквы utf8 ессно, в окошках эти же буквы отображаются корректно. Т.е. при работе с xml я ограничен использованием только английских букв? Это правильно?
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Нет, пакет fcl-xml основан на WideString и поэтому английскими буквами ни разу не ограничен. При использовании строк в кодировке utf8, нужно использовать ф-ции utf8decode() и utf8encode().
Стоит отметить, что в linux с utf-8 локалью оно будет работать и без преобразований, но в windows - не будет.
Стоит отметить, что в linux с utf-8 локалью оно будет работать и без преобразований, но в windows - не будет.
