Per gestire una lista di stringhe, caricarla e salvare su file di testo, si può usare la classe TStringList.
La StringGrid, dal canto suo, permette di accedere contemporaneamente al testo contenuto in righe e colonne tramite le proprietà Rows e Col.
E' possibile ottenere il contenuto della prima riga, ad esempio, dalla proprietà Rows[1]; la proprietà restituisce una lista di stringhe (che in realtà è un'unica stringa separata da ritorni a capo).
Creando una nuova istanza di TStringList, è possibile memorizzare il testo ottenuto da Rows nella proprietà Text, modificare il carattere delimitatore (ad esempio, "|", il pipe) e salvare il testo su file separando ciascun valore con questo deliminatore, che può eventualmente essere sostituito con il TAB (carattere #9).
codice:
procedure TForm1.Button1Click(Sender: TObject);
var
SL: TStringList;
begin
SL := TStringList.Create;
try
SL.Text := StringGrid1.Rows[1].Text;
SL.Delimiter := '|';
Memo1.Lines.Text := SL.DelimitedText;
Memo1.Lines.SaveToFile('export.txt');
finally
SL.Free;
end;
end;
Questo codice di esempio mostra come creare un'istanza di TStringList, memorizzare al suo interno il contenuto della prima riga di una griglia, modifica il delimitatore, visualizza le stringhe esportate in un memo e le salva in un file di testo, poi distrugge la StringList.
Come al solito, la tua domanda è esageratamente vasta e richiederebbe un giorno di lavoro solo per fornire un esempio completamente funzionante...consulta la Guida in linea per conoscere tutte le funzionalità di TStringList e TStringGrid.Rows/Cols e poi valuta come combinarle per ottenere il formato di esportazione che desideri.
Ciao!