Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > TXMLDocument


Автор: Aline 22.7.2005, 10:28
Помогите, плиз, разобраться:
в программе использую компонент TXMLDocument, он связан с внешним файлом *.xml. Этот файл был создан с использованием программы XMLwriter 2.5
Поля заданы как int и string. Когда в программе получаю значения элементов из XML
(напр., Buttons[i].BLeft = Component->ChildNodes->Nodes[(AnsiString)"Left"]->GetNodeValue(); //тип int )

то всё нормально.
Если же в XML-файле добавляю элемент типа float или decimal, то С++ Builder начинает ругаться, когда я пытаюсь получить значение: ошибка типа того, что не соответствие типов , что OleStr (почему то GetNodeValue мне это передает) не может быть преобразован в double...
Не могу понять почему, ведь целые числа нормально считывает...

Автор: chaos 22.7.2005, 11:01
а может это зависит от знака . или , в вещественном чилсе?

Автор: Aline 22.7.2005, 12:35
chaos
Дело в том, что когда я в xml пишу, то там сразу проверяется на соответствие схеме. В XML ставится ".", иначе он будет ругаться.
Но если не найду решение простое, тогда буду использовать тип string с заданным форматом при помощи регулярных выражений

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)