一个文本文件(*.txt),里面内容以|号分割,如:
good|ban|sdasadas
food|fan|sdfsdf
god|bank|dfasfa现在想把每个字段读出,赋给多维数组
还有如何获得当前行数。
我是个初学者。请给位大侠,指点。
最好,能告诉我详细代码。谢谢
good|ban|sdasadas
food|fan|sdfsdf
god|bank|dfasfa现在想把每个字段读出,赋给多维数组
还有如何获得当前行数。
我是个初学者。请给位大侠,指点。
最好,能告诉我详细代码。谢谢
FileList:TStringList;
i,j,Position:integer;
ThisLine,ThisElem:String;
LineArry:array of array of string;
begin
FileList:=TStringList.Create;
FileList.LoadFromFile('f:\a.txt');
SetLength(lineArry,FileList.Count);//设置数组大小为与文本文件的行数一致
for i:=1 to FileList.count do
begin
ThisLine:=FileList.Strings[i-1];//取得当前行
While Length(ThisLine)>0 do
begin
SetLength(LineArry[i-1],Length(LineArry[i-1])+1);//增加这一行的数组个数
Position:=Pos('|',Thisline);
if Position>0 then
begin
LineArry[i-1][Length(LineArry[i-1])-1]:=Copy(ThisLine,1,Position-1);//存一个数据到此数组
ThisLine:=copy(ThisLine,Position+1,Length(Thisline)-Position);
end
else
begin
Position:=Pos('|',Thisline);
LineArry[i-1][Length(LineArry[i-1])-1]:=Copy(ThisLine,1,Length(ThisLine));//存一个数据到此数组
ThisLine:='';
end;
end;
end;
end;
linearry[0][0]:=good
LineArry[0][1]:=ban
linearry[0][2]:=sdasadas
LineArry[1][0]:=food
linearry[1][1]:=fan
LineArry[1][2]:=sdfsdf
linearry[2][0]:=god
LineArry[2][1]:=bank
LineArry[2][1]:=dfasfa