真正的高手来了没有!!!!!有关读TXT文件!!!!!!!!!!!!!!!!!!!!(50分)

  • 主题发起人 主题发起人 bestway
  • 开始时间 开始时间
B

bestway

Unregistered / Unconfirmed
GUEST, unregistred user!
问题是:以下是一个ABC.TXT文件的具体内容,请问如果要读取每一行(第一行到第四行)的
内容。该如何写语句;如果要读取第五行开始和所有内容,该如何写!谢谢
{MailTo:zhongshan@online.sh.cn
MailCc:mingming@wincn.net
Subject:test file
From:bigmingming@21cn.com
$$$
test fds aaaaaaaaaaaaaaaa
lkljk

fddf}

 
var
f:textfile;
sLine:string;
i:integer;
begin
i:=0;
AssignFile(F, 'ABC.txt');
Reset(F);
while not EOF(F) do
begin
i:=i+1;
if i>4 then break; //判断是否满足条件,此处为如读前四行,如读5行后,则
//if i<4 then continue ;..具体条件自己控制了
ReadLn(F, sLine);//读到sLine中
...处理代码
end;
end;
 
var textfile: string;
textlines: TStrings;
begin
textlines:= TStringList.create;
textlines.loadfromfile(textfile);
// textlines[0]就是第1行的内容
// textlines[1]就是第2行的内容
//剩下的我不说你也该会了吧.

textlines.free;

end;
 
................太多高手了。。。。
 
先把它读到TMemo中,然后使用循环,每次读一行,我不是真正的高手,我只能教你这么做
读1~4行:for i:=0 to 3 do str:=Memo1.lines;
其他的也一样
 
补充问一下读第四行几后所有内容的命令,请具体写一下好吗?谢谢!
 
var textfile: string;
textlines: TStrings;
mytext:string; //这就是你想要的第4行到最后的内容
i:integer;
begin
textlines:= TStringList.create;
textlines.loadfromfile(textfile);
// textlines[0]就是第1行的内容
// textlines[1]就是第2行的内容
//剩下的我不说你也该会了吧.

for i:=3 to textlines.count-1 do begin
mytext:=mytext+textlines.strings;
end;


textlines.free;

end;

 
1、如果我只有第2行内容的函数,应该怎么写。
2、如果我只有第4行之后的所有内容函数,应该怎么写。
谢谢
 
1.str:=Memo1.lines[1];
2. for i:=3 to textlines.count-1 do
mytext:=mytext+textlines.strings;


 
不能用MEMO控件行吗?
 
楼上说得很清楚了, 一个TStrings就搞定了。
首先
var xxx:TStrings;
然后
xxx:= TStringList.create; //先创建
接着就可以载入文件:
xxx.loadfromfile('路径/文件名.txt');
然后就可以对文件进行操作了:
xxx.strings[n]; //取第n行的内容。 n从0算起
 
后退
顶部