Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.30;
Скачать: CL | DM;

Вниз

Вопрос знатокам XML (и Delph :) )   Найти похожие ветки 

 
X9 ©   (2005-10-07 20:18) [0]

Здравствуйте, Мастера!
Решил использовать XML в своём проекте, натолкнулся на следующие грабли:
Допустим, имеется некий файл collection.xml

-------------------------collection.xml-------------------------
<?xml version="1.0" encoding="windows-1251"?>
<ItemCollection Version="1.0" Root="Soft">
<Item1>
    <Name>Имя первого элемента</Name>
       <Comment>Комментарий к элементу 1</Comment>
       <Paths>
        <Path1 Name="первый путь элемента 1">C:\элемент1\документ1.txt</Path1>
           <Path2 Name="второй путь элемента 1">C:\элемент1\документ2.txt</Path2>
       </Paths>
       <Additional>
        <Item1 Name="доп. информация для элемента 1(1)">Информация 1</Item1>
           <Item2 Name="доп. информация для элемента 1(2)">Информация 2</Item2>
       </Additional>
   </Item1>
<Item2>
    <Name>Имя первого элемента</Name>
       <Comment>Комментарий к элементу 1</Comment>
       <Paths>
        <Path1 Name="первый путь элемента 2">C:\элемент2\документ1.txt</Path1>
           <Path2 Name="второй путь элемента 2">C:\элемент2\документ2.txt</Path2>
       </Paths>
       <Additional>
        <Item1 Name="доп. информация для элемента 2(1)">Информация 1</Item1>
           <Item2 Name="доп. информация для элемента 2(2)">Информация 2</Item2>
       </Additional>
   </Item2>
</ItemCollection>
----------------------------------------------------------------


Пытаюсь открыть этот файл в программе:

---------------------------myprog.xml--------------------------
[...]
var
 Doc: TXMLDocument;
begin
 Doc := TXMLDocument.Create;
 Doc.Active := true;
 Doc.LoadFromFile("C:\collection.xml");
[...]
----------------------------------------------------------------

При выполнении Doc.LoadFromFile("C:\collection.xml") вылетает сообщение об ошибке EDOMParseError со следующим тесктом: "Системная ошибка -2146697210. Line 0". При попытке проверки данного файла на w3.org выходит сообщение о неизвестной кодировке win-1251. Яне силён в XML, но вроде бы видимых ошибок нет. Я думаю, что ошибка вызвана использованием русского языка, но для меня это необходимо. Что делать?


 
Eraser ©   (2005-10-07 21:13) [1]


> X9 ©   (07.10.05 20:18)

Пробовад "win-1251" ?


 
debyte   (2005-10-07 21:21) [2]

Возможно стоит попробовать более высокую версию msxml.dll или namespace msxml2 (какая версия у TXMLDocument в delphi мне неведомо).


 
X9 ©   (2005-10-08 07:33) [3]


> Eraser ©   (07.10.05 21:13) [1]
>
>
> > X9 ©   (07.10.05 20:18)
>
> Пробовад "win-1251" ?


Попробовал, эффект нулевой.


> debyte   (07.10.05 21:21) [2]
>
> Возможно стоит попробовать более высокую версию msxml.dll
> или namespace msxml2 (какая версия у TXMLDocument в delphi
> мне неведомо).


Насчёт Delphi не знаю, но я работаю в XP Prof, IMHO версия должна быть достаточно высокой. Например, если попытаться открыть файл из digest"а, то всё работает, хотя там применяется русский текст и заголовок xml я выдрал именно оттуда.


 
X9 ©   (2005-10-08 08:22) [4]

Всё, разобрался!!!
Не поверите, но всё дело было в неправильном имени файла. Крайне странно то, что parser от MS не мог выдать вразумительное сообщение об ошибке.

Всем спасибо!



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

Текущий архив: 2005.10.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
3-1127202307
Pil
2005-09-20 11:45
2005.10.30
запись была удалена другим пользователем


1-1128624589
Gall
2005-10-06 22:49
2005.10.30
Иконки приложения


4-1124778504
officeman
2005-08-23 10:28
2005.10.30
как получить полный путь каталога "Рабочий стол"


8-1117665158
TechnoDreamer
2005-06-02 02:32
2005.10.30
Autolevels, autocolor и autocontrast


14-1128440750
LordOfRock
2005-10-04 19:45
2005.10.30
Наткнулся в Интернете...