Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как саписать данные из Edit в файл xml


Страницы:   1 2

Daria ©   (2006-02-07 14:25:00) 

Всем привет. Надо, чтобы пользователь на формочке вводил в едиты данные, а после надатия на кнопочку,эти данные записывались в файл .xml


Loginov Dmitry   (2006-02-15 11:25:00) [1]


> wal ©   (07.02.06 15:05) [8]
>
> Создаешь шаблон с пустыми тэгами. Дальше что-то вроде этого:
>
> uses MSXML2_TLB;


А почему, собственно, MSXML 2_TLB, а не MSXML_TLB? Имхо, библиотечка с интерфейсом MSXML2_TLB появляется после установки MSOffice. Т.е., если MSOffice не установлен, то некоторые функции, объявленные в MSXML2_TLB могут оказаться недоступными. Притом, MSXML_TLB генерируется на порядок быстрее :)


wal   (2006-02-15 11:22:00) [2]


> Просходит какая-то аварийная ситуация и вываливается окно:
Что и требовалось доказать. Файл не может быть прочитан. Или его нет, или он кривой или еще что-нибудь.


Сенокур Петя   (2006-02-15 10:37:00) [3]


> wal ©   (14.02.06 16:59) [29]
>
> > xml.load('C:\tests.xml');
> if not xml.load('C:\tests.xml') then PByte(0)^:=0;


Неаа... Просходит какая-то аварийная ситуация и вываливается окно:

"Project xxxx raised exception class yyyyy with message 'zzzzzz'.
Process stopped.  Use Step or Run to continue."

Ну и на том спаисибо, буду пытаться дальше думать, а то начинаю комплексовать по поводу того, что слишком много вопросов у меня :)


> У Микрософта ее дофига


Будем искать

ЗЫ: спасиб за участие...


umbra   (2006-02-14 18:24:00) [4]

Удалено модератором


wal   (2006-02-14 16:59:00) [5]


> xml.load('C:\tests.xml');
if not xml.load('C:\tests.xml') then PByte(0)^:=0;

> Кстати, а есть как.-нидь документация по MSXML2_TLB?
У Микрософта ее дофига


Сенокур Петя   (2006-02-14 15:19:00) [6]


> wal ©   (14.02.06 15:12) [27]


так я просто пока вникаю в
> как саписать данные из Edit в файл xml

и взял код самого файла xml из
> Daria   (07.02.06 15:51) [16]


а сам код
Это на Button1.Click
> var
> xml: DOMDocument;
> nl: IXMLDomNodeList;
> i: integer;
> begin
>   xml := CoFreeThreadedDOMDocument.Create;
>   xml.async := false;
>   xml.load('C:\tests.xml');
>   nl := xml.selectNodes('/INQ/TBODY/ChangeCode/KeyData/KEYLP/Name');
>  for i:=0 to Pred(nl.length) do
>   nl.item[i].text := LabeledEdit1.text;
>   xml.save('C:\tests.xml');
> end;

ну путь расположения tests.xml свой...

у меня файл test.xml полностью пустой становиться....

Кстати, а есть как.-нидь документация по MSXML2_TLB?


wal   (2006-02-14 15:12:00) [7]


> [26] Сенокур Петя   (14.02.06 15:06)
Код давай


Сенокур Петя   (2006-02-14 15:06:00) [8]


> тэк-с, все работает. сохраняется, только абсолютно пустой
> файл
> <Цитата>
>
>
> Daria   (07.02.06 16:12) [23]
> все, уже не пустой, но такой же как и был до запуска программы.
>  т.е. ничего не добавляется. вот мне в name нужно добавить
> из edit1


а у меня файл пустой.... не подскажите в чем проблема?... не могу найти причину (в отличии от Daria )  :)


Daria   (2006-02-07 16:26:00) [9]

ой, спасибо огромное!!!! впервые в жизни вижу xml. пойду учить заодно :))
wal, ты просто гений!!!!


wal   (2006-02-07 16:20:00) [10]


> [21] Reindeer Moss Eater ©   (07.02.06 15:59)
/descendant-or-self::*

> [23] Daria   (07.02.06 16:12)
> nl := xml.selectNodes('Name');

'/INQ/TBODY/ChangeCode/KeyData/KEYLP/Name'


Daria   (2006-02-07 16:12:00) [11]

все, уже не пустой, но такой же как и был до запуска программы. т.е. ничего не добавляется. вот мне в name нужно добавить из edit1


Daria   (2006-02-07 15:59:00) [12]

ой, минусы - фигня какая-то.
тэк-с, все работает. сохраняется, только абсолютно пустой файл


Reindeer Moss Eater   (2006-02-07 15:59:00) [13]

Кстати, можно ли сочинить такой XPath, который вернет все узлы в иерархии начиная с корня?


wal   (2006-02-07 15:55:00) [14]


> [16] Daria   (07.02.06 15:51)
а что это за минусы?


wal   (2006-02-07 15:54:00) [15]


> [17] Reindeer Moss Eater ©   (07.02.06 15:52)
Точно, старею :)


wal   (2006-02-07 15:53:00) [16]

Если считываешь из файла, то просто load, а не loadXML


Reindeer Moss Eater   (2006-02-07 15:52:00) [17]

for i:=0 to Pred(nl.length) do


Daria   (2006-02-07 15:51:00) [18]

а сам файл tests.xml такой должен быть?

 <?xml version="1.0" encoding="windows-1251" ?>
- <INQ version="1">
- <THEADER>
 <CreateDate>20.07.2005</CreateDate>
 </THEADER>
- <TBODY>
- <ChangeCode>
- <KeyData>
- <KEYLP>
 <Name></Name>
 <EGRN></EGRN>
 <INN></INN>
 </KEYLP>
 </KeyData>
 <SubjectCode></SubjectCode>
 <Email></Email>
 <NewCode></NewCode>
 </ChangeCode>
 </TBODY>
 </INQ>


Daria   (2006-02-07 15:51:00) [19]

var
xml: DOMDocument;
nl: IXMLDomNodeList;
i: integer;
begin
  xml := CoFreeThreadedDOMDocument.Create;
  xml.async := false;
  xml.loadXML('C:\tests.xml');
  nl := xml.selectNodes('Name');
 for i:=0 to nl.length do
  nl.item[i].text := LabeledEdit1.text;
  xml.save('C:\tests.xml');
end;


wal   (2006-02-07 15:49:00) [20]

Полностью код приведи


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо