Bueno yo voy a intentar darte mas información de lo que hago. Para guardar utilizo este código:
Código Delphi
[-]
var f:textfile; i:integer;
begin
assignfile (f,'nombres.txt');
rewrite(f);
for i:=0 to l.items.count-1 do
writeln (f,l.items[i]);
closefile(f);
Y cuando abro el programa, para "cargar" el listbox utilizo esto:
Código Delphi
[-]
var f:textfile;
n:string;
begin
assignfile(f,'nombres.txt');
reset(f);
while not eof(f) do
begin
readln(f,n);
edit1.Text:=n;
readln(f,n);
edit2.Text:=n;
readln(f,n);
edit4.Text:=n;
readln(f,n);
edit5.Text:=n;
button1.Click; end;
closefile(f);
edit1.text:='';
edit2.text:='';
edit4.text:='';
edit5.text:='';
end;
1). En la tabla NO vuelco todo el contenido, solo la persona que se apellida Martinez Perez. Pero el caso es si hay dos personas con Martinez Perez. Como poner a los dos?.
2) Y la otra duda es, una vez volcada a Pepe Martinez Perez, si le tengo que cambiar algun dato, por ejemplo su nombre (cosa que hago desde la tabla, una vez volcado cuando lo busque...) pues le doy y borro su nombre y escribo ahora Jose. Le doy a guardar y se borra TODOS LOS ITEMS del listbox, menos la "persona" con sus 4 datos (DNI,NOMBRE,APELLIDOS,CIUDAD).
El código que utilizo para borrar lo que hay en la tabla y que se guarde es este:
l.items.clear;
edit1.text:=t.cells[1,1];
edit2.text:=t.cells[2,1];
edit4.text:=t.cells[3,1];
edit5.text:=t.cells[4,1];
button1.click;
¿Que pasa? Pues que borra toda la lista y añade a esa persona con sus cuatro datos, pero las otras las pierdo. ¿Alguna otra forma?
gracias.