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

Вниз

Разбор XML   Найти похожие ветки 

 
Grafsky   (2004-12-19 09:14) [0]

Привет всем!
Не подскажете библиотеки (или может есть стандартные ср-ва) для разбора XML файлов. Спасибо.


 
Polevi ©   (2004-12-19 09:19) [1]

ms xml parser


 
VMcL ©   (2004-12-19 09:20) [2]

Закладка Internet: TXMLDocument
?


 
Grafsky   (2004-12-19 12:45) [3]

VMcL: в 5 делфи я так и делал, а где его взять в 7-м?


 
VMcL ©   (2004-12-19 19:33) [4]

>>Grafsky  (19.12.04 12:45) [3]

Не знаю. У меня нет 7-го Delphi.


 
Grafsky   (2004-12-19 20:02) [5]

Жаль. Но все равно, спасибо. Будем искать


 
Darlock   (2004-12-28 15:44) [6]

У меня допустим TXMLDocument валится с ошибкой когда на вход ему подается XML файл с тегом содержащим значения на русском языке.
П.С. А пример использоваия TXMLDocument  можно?


 
Darlock   (2004-12-28 17:18) [7]

Пример уже не нужен, разобрался, а вот с кодировкой русской све еще проблемы


 
Algol   (2004-12-28 17:36) [8]

<?xml version="1.0" encoding="windows-1251"?>


 
Darlock   (2004-12-28 17:43) [9]

Действительно прокатило, спасибо.
Пример кода как читать XML файл:

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, xmldom, XMLIntf, {xercesxmldom,} XMLDoc, msxmldom, ComCtrls,
 StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   btnRefreshClick: TButton;
   lv: TListView;
   XMLDoc: TXMLDocument;
   procedure btnRefreshClickClick(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnRefreshClickClick(Sender: TObject);
var
ADPLocalFile : TFileName;
StartItemNode : IXMLNode;
ANode : IXMLNode;
STitle, sDesc, sLink : OleVariant;
lvi: TListItem;

vComplex, vCell :IXMLNode;
//<comb num="1" cscore="769320" cname="JORN" home="0" uname="merger77" race="1"/>
vComplexNumber: String;
vComplexRing: String;
vComplexRingName: String;
vComplexGate: String;

vCellNum: String;
vCellScore: String;
vCellName: String;
vCellUserName: String;
vCellHome: String;
vCellRace: String;
vCellAlliance: String;

begin

lv.Clear;
XMLDoc.FileName := "test.xml";
XMLDoc.Active := True;
vComplex := XMLDoc.DocumentElement;
vComplexNumber := VarToStr(vComplex.Attributes["number"]);
vComplexRing := VarToStr(vComplex.Attributes["ring"]);
vComplexRingName := VarToStr(vComplex.Attributes["ringname"]);
vComplexGate := VarToStr(vComplex.Attributes["gate"]);

vCell := XMLDoc.DocumentElement.ChildNodes.First;
ANode := vCell;

while Assigned(ANode) do begin
 vCellNum := VarToStr(ANode.Attributes["num"]);
 vCellScore := VarToStr(ANode.Attributes["cscore"]);
 vCellName := VarToStr(ANode.Attributes["cname"]);
 vCellHome := VarTostr(ANode.Attributes["home"]);
 vCellUserName := VarToStr(ANode.Attributes["uname"]);
 vCellRace := VarToStr(ANode.Attributes["race"]);
 vCellAlliance := VarToStr(ANode.Attributes["alliance"]);

 with LV.Items.Add do begin
   Caption := (vComplexNumber);
   SubItems.Add(vComplexRing);
   SubItems.Add(vComplexRingName);
   SubItems.Add(vComplexGate);
   SubItems.Add(vCellNum);
   SubItems.Add(vCellScore);
   SubItems.Add(vCellName);
   SubItems.Add(vCellHome);
   SubItems.Add(vCellUserName);
   SubItems.Add(vCellRace);
   SubItems.Add(vCellAlliance);
 end;

 ANode := ANode.NextSibling;
end; //while
end;

end.



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

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

Наверх




Память: 0.49 MB
Время: 0.026 c
1-1108665072
CSC
2005-02-17 21:31
2005.03.06
Глобальные данные


11-1092569743
SSSSS
2004-08-15 15:35
2005.03.06
DLL в KOLe??? Очень надо!


9-1101559442
AbLaZe
2004-11-27 15:44
2005.03.06
карта для RPG


14-1108547446
}|{yk
2005-02-16 12:50
2005.03.06
Помогите разобраться с фотоаппаратом


6-1103893289
mega
2004-12-24 16:01
2005.03.06
Отаправка файла в LAN