Delphi-Quellcode:
result.FieldDefs.Add(AFieldDefArray[I].Name, AFieldDefArray[I].DataType, AFieldDefArray[I].Size);
Result.FieldDefs[Result.FieldDefs.Count-1].CreateField(Result,nil,AFieldDefArray[I].Name);
Die Frage dürfte aber sein für was für eine Dataset und warum und ob nur FieldDefs oder auch Fields benötigt werden (z.b. um Loopupfields für dynamsich erzeugte Clientdataset verwenden zu können).
Textdatei klingt als ob es am einfachsten mit
ADO direkt öffnen könntest
Delphi-Quellcode:
ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source="c:\" ;Extended Properties="text;HDR=NO;FMT=Delimited"';
ADOConnection1.Open;
ADODataSet1.LockType := ltReadOnly;
ADODataSet1.CommandType := cmdText;
ADODataSet1.CommandText := 'select * from Test.csv"';
ADODataSet1.Open;
EDIT: wenn das Format der Textdatei ungüstigt ist kann man sich mit einer schema.ini behelfen, ein Beispiel ist hier
http://www.digital-inn.de/ms-access/...portieren.html zu finden ...