1

Delphi を使用して XML ファイルで作業する必要があります。

DBGrid の xml データをユーザーに提示し、ユーザーが行った変更を XML ファイルに保存したいと考えています。

たとえば、次の xml (ユーザーに提示されたもの) では、ユーザーchanged City of ABC under clientadded a new customer with NickName as "AAA"その変更を XML ファイルに反映する必要があります。

<Data LinkID=”0”&gt;
  <Client>
      <Item Name=”ABC” Mobile=”1234” City=”IN” />
      <Item Name=”PQR” Mobile=”5678” City=”IN” />
  </Client>
  <Customer>
    <Item NickName=”XYZ” Phone=”1254” City=”IN” />
    <Item NickName=”MNO” Phone =”41255” City=”IN” />
  </Customer>
</Data>

これを達成するために XMLDocument と ClientDataSet を使用していますが、成功していません。

これを達成するために誰かが私を助けることができますか?

4

1 に答える 1

4

問題は、私が使用している XML ファイルにあります。

<METADATA> and <ROWDATA>XML ファイルは、タグが必要な指定された形式である必要があります。

xml をその形式に変更しました。

<?xml version="1.0" standalone="yes"?>  
<DATAPACKET Version="2.0">
<METADATA>
<FIELDS>
<FIELD attrname="Name" fieldtype="string" WIDTH="50"/>
<FIELD attrname="Mobile" fieldtype="string" WIDTH="20"/>
<FIELD attrname="City" fieldtype="string" WIDTH="20"/>
</FIELDS><PARAMS CHANGE_LOG="6 1 8"/>
</METADATA>
<ROWDATA>
<ROW Name="ABC" Mobile="1234" City="IN"/>
<ROW Name="PQR" Mobile="5678" City="IN"/>
<ROW Name="AAA" Mobile="7894" City="IN"/>
<ROW Name="MNO" Mobile="4569" City="IN"/>
<ROW Name="ABC" Mobile="45685" City="IN"/>
</ROWDATA>
</DATAPACKET>

次に ClientDataSet1.LoadFromFile('E:\projects\XML\Sample App with CDS\XmlText.xml');、XML ファイルを読み取っていました。

グリッドで変更が行われた後、ClientDataSet1.SaveToFile('E:\projects\XML\Sample App with CDS\XmlText.xml',dfXML);メソッドを使用して XML に保存し直しました。

この目的で XMLDocument は必要ありません。

于 2010-10-22T09:27:09.997 に答える