readln怎么把整个文件都读入了?

szzgqzzz 2001-08-03 06:25:56
我声明了F:TextFile, 然后reset(F, 'test.c'); 再readln(F, s);其中s:string变量,怎么就把整个文件读入s了?我只要读入一行!
(test.c文件中每行都是以$0D$0A结束的,我用UltraEdit看过了!)
...全文
198 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jll 2001-08-04
  • 打赏
  • 举报
回复
根据我的经验,是你的Reset语句有问题。建议采用以下方式:
var
F:TestFile;
S:string;
begin
AssignFile(F,'Test.c');
Reset(F);
Readln(F,S);
CloseFile(F);
end;
wuyh78 2001-08-04
  • 打赏
  • 举报
回复
别急,我前不久做文件耦合时也出现类似问题的,确实是读一行就把总个数据给读完了,那也不要紧,你读出总文件后,再用数组存储你人为的行(比如两个$0D$0A间就是一个行数据),先记住每个$0D$0A的位置,再用copy函数处理,虽然显得笨拙,但却实用就足够了……
smile_and_smile 2001-08-04
  • 打赏
  • 举报
回复
这是文件的问题,但是还有方法可以处理该文件。
偶也喷到一样的问题,最后我用读取文件中各信息间的分割符的方法得到了相关数据。
l_walker 2001-08-03
  • 打赏
  • 举报
回复
你是文件是不是没换行啊????!
szzgqzzz 2001-08-03
  • 打赏
  • 举报
回复
我怎么只能看到两张贴子,急死我了!!!!
szzgqzzz 2001-08-03
  • 打赏
  • 举报
回复
???
Xb_xj 2001-08-03
  • 打赏
  • 举报
回复
Reset(F,'aaa.c');
readln(f,s);
Memo1.Text:=Memo1.Text+s;
closeFile(F);
试一试
billyshen 2001-08-03
  • 打赏
  • 举报
回复
你试试看用一个listbox做实验
listbox1.items.add(s);
看显示出来的是不是一行,还是所有的文本内容?
ch81 2001-08-03
  • 打赏
  • 举报
回复
应该是文件行结束符不对,我想!
但是你说#13#10好像没错!
你把文件发给我吧,我试试:ipbay@263.net
szzgqzzz 2001-08-03
  • 打赏
  • 举报
回复
cb81: 我的文件会有什么问题才引发这种现象?
ch81 2001-08-03
  • 打赏
  • 举报
回复
readln确实是读一行数据的
你用memo1.lines.loadfromtext('test.c');
看读出来的是不是一行的,如果还是一行,
就是你的文件有问题。

5,939

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧