Цитата:
Сообщение от Carlo
Добрый, день!!! Ребят подскажите как загрузить XML -файл в StringGrig (но при этом: имя атрибута -заголовок столбца, а знгачение атрибута - запись в поле )??????
|
Руками, пользуясь TXMLDocument.
Пример из реального проекта, для доступа к атрибутам надо пользоваться соотв. свойствами:
Код:
procedure TUpdateInfo.Parse(ADoc: IXMLDocument);
var
I : Integer;
ANode : IXMLNode;
begin
For I := 0 To ADoc.DocumentElement.ChildNodes.Count-1 Do
Begin
ANode := ADoc.DocumentElement.ChildNodes[i];
If ANode.NodeName = 'VersionNumber' Then
Begin
VersionNumber.Major := StrToIntDef(ANode.ChildNodes.FindNode('Major').Text,0);
VersionNumber.Minor := StrToIntDef(ANode.ChildNodes.FindNode('Minor').Text,0);
VersionNumber.Release := StrToIntDef(ANode.ChildNodes.FindNode('Release').Text,0);
VersionNumber.Build := StrToIntDef(ANode.ChildNodes.FindNode('Build').Text,0);
End;
If ANode.NodeName = 'ProgramName' Then
Begin
FProgramName := ANode.Text;
End;
If ANode.NodeName = 'ReleaseNotes' Then
Begin
FReleaseNotes.Text := ANode.Text;
End;
If ANode.NodeName = 'ModuleFileName' Then
Begin
FModuleFileName := ANode.Text;
End;
End;
end;
procedure TUpdateInfo.LoadFromStrings(AStrings: TStringList);
var
ADoc : IXMLDocument;
begin
ADoc := TXMLDocument.Create(Nil);
ADoc.XML.Assign(AStrings);
ADoc.Active := True;
Try
Parse(ADoc);
Finally
ADoc := Nil;
End;
end;