1、如何在A123.TXT文件中查找指定的字符串并返回行数?
2、如何根据行号直接读出对应行的数据。例如:A123.TXT内容如下:
A0001 ABCDEF02 33333
A0002 ABCDEF05 55555
A0003 ABCDEF07 99999
A0004 ABCDEF01 66666
A0005 ABCDEF09 44444
A0006 ABCDEF08 11111
...我想找出字符串A0005所在的行,并得到行号:5
然后根据行号5,直接读出第5行的数据"A0005 ABCDEF09 44444"
2、如何根据行号直接读出对应行的数据。例如:A123.TXT内容如下:
A0001 ABCDEF02 33333
A0002 ABCDEF05 55555
A0003 ABCDEF07 99999
A0004 ABCDEF01 66666
A0005 ABCDEF09 44444
A0006 ABCDEF08 11111
...我想找出字符串A0005所在的行,并得到行号:5
然后根据行号5,直接读出第5行的数据"A0005 ABCDEF09 44444"
解决方案 »
- 继续提问,关于MIDAS(DataSnap)三层结构中客户端异常后得到活动链接数的需求!
- 如何在运行过程中用一个按钮中断程序?
- 一个关于dbgride滚动条的问题?(30分)
- 如何在其他的D3D窗口上画图
- 80分:delphi+access数据运算时报错:数据类型不对
- 汇总小问题
- 请问这样的SQL语句怎写?
- ole控件与access2000相结合的问题
- 急,请问把一个控件上的内容拖到LISTVIEW1上时,在LISTVIEW1上的一个ITEM上释放,此时如何获得ITEM的caption???
- 能不能通过某一个控件来获取它所在的窗体的句柄? 非常头痛:帮忙!
- 使用FastReport2.5如何打印条形码,不知道为什么我的怎么总出错?郁闷!!
- 关于spcomm接收缓存问题,帮帮忙
var
sl: TStringList;
i: integer;
begin
sl := TStringList.Create;
sl.LoadFromFile('e:\a.txt');
for i:=0 to sl.Count-1 do
Memo1.Lines.Add(sl.Strings[i]);
FreeAndNil(sl);
i := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, Pos('A0005',Memo1.Text), 0);
ShowMessage('行号:' + IntToStr(i+1) + #13#10 + '内容:'+ Memo1.Lines.Strings[i]);
end;
var
sl: TStringList;
i: integer;
begin
sl := TStringList.Create;
sl.LoadFromFile('e:\a.txt');
for i:=0 to sl.Count-1 do
if Pos('A0005', sl.Strings[i])>0 then
begin
ShowMessage('行号:' + IntToStr(i+1) + #13#10 + '内容:'+ sl.Strings[i]);
break;
end;
FreeAndNil(sl);
end;
var s:TStringList;
begin
result:=0;
s:=TStringList.Create;
s.LoadFromFile(FileName);
s.Find(Text,result);
// ShowMessage(s[result]);//要显示行数据加这句
s.Free;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(IntToStr(FindTextFromFile('c:\A123.Txt','A0003')));
end;
2.用逐行读数据的方式查找,这样效率好象不高。这样做与ReadLn()没有多大区别。有没有其它简便一点的方法?
请楼主试一下。