Mapisałem taki kod który pobiera nazwy plików w folderze i za pomocą pętli dodaje tyle childów <record> ile jest plików i w childach jako atrybut "to" wstawia nazwe pliku bez rozszerzenia. Np.:
<record from="liczba" to="plik1"/>
<record from="liczba" to="plik2"/>
<record from="liczba" to="plik3"/>
O to problem:
Nie wiem jak zrobić tak, żeby atrybut "from" równał się liczbie porządkowej czyli każdy następny dodany child przez pętle miał liczbe w "from" o jeden większą.
Super by było gdyby jeszcze po ponownym uruchomieniu całej procedury program sprawdzil "liczbe" w from w ostatnim childzie <record> i dodawał następne z childy record z liczbą większą o 1 od owego ostatniego childa <record>.
procedure TForm1.Button3Click(Sender: TObject);
var
SR : TSearchRec;
Fik, stopka, il,i,x,cx,ist : integer;
nazwa,lang : string;
begin
Fik := FindFirst( 'C:\xml\a' + '/*.txt', faArchive, SR);
while (Fik = 0) do
begin
nazwa := sr.name;
for il :=1 to length (nazwa) do
if nazwa[il] = '.' then stopka := il;
Delete (nazwa, stopka, length(nazwa) - stopka + 1);
XML.Active := True;
XML.LoadFromFile('C:\xml\config.xml');
with XML.DocumentElement.ChildNodes['list'].addchild('record') do
begin
attributes['from']:= (); //tu musi byc zapetlony integer
attributes['to']:= ('nazwa');
Fik := FindNext(SR);
end;
XML.Active := False;
end;
end;