Hola yo lo hago de la siguiente manera te pongo el codigo e quitado partes que no son relevantes espero no haber metido la pata

y no haber quitado algo importante.
Código Delphi
[-]
Procedure TWPrograma.TratarFicheroTexto;
Var
SecFile:TextFile;
Pf,Pi,Nc:Integer;
Linea:String;
Contador:Integer;
NombreFichero:String;
C1,C2,C3,C4,C5,C6,C7,C8,C9:String;
Campo:String;
PosLp:Integer;
Begin
AssignFile(SecFile,IFile.FileName);
Reset(SecFile);
While not Eof(SecFile) Do
Begin
ReadLn(SecFile,Linea);
Nc:=1;Pi:=1;Campo:='';
C1:='';C2:='';C3:='';C4:='';C5:='';C6:='';C7:='';C8:='';C9:='';
while Pos(',', Linea) > 0 do
Begin
IF Pos(',',Linea)>0 Then Pf:=Pos(',',Linea)
If Nc=1 Then C1:=Copy(Linea,1,Pf-1);
If Nc=2 Then C2:=Copy(Linea,1,Pf-1);
If Nc=3 Then C3:=Copy(Linea,1,Pf-1);
If Nc=4 Then C4:=Copy(Linea,1,Pf-1);
If Nc=5 Then C5:=Copy(Linea,1,Pf-1);
If Nc=6 Then C6:=Copy(Linea,1,Pf-1);
If Nc=7 Then C7:=Copy(Linea,1,Pf-1);
if Nc=8 then C8:=Copy(Linea,1,Pf-1);
Linea:=Copy(LInea,Pf,Length(Linea));
Linea:=Trim(Linea);
Inc(Nc);
End;
C7:=Linea;
LC1.Caption:=C1;
LC2.Caption:=C2;
LC3.Caption:=C3;
LC4.Caption:=C4;
LC5.Caption:=C5;
LC6.Caption:=C6;
LC7.Caption:=C7;
End;
CloseFile(SecFile);
End;
Espero que te sea util.
Un Saludo.