欲从文本文件中一行行读出...(100分)

  • 主题发起人 主题发起人 liamy
  • 开始时间 开始时间
L

liamy

Unregistered / Unconfirmed
GUEST, unregistred user!
欲从文本文件中一行行读出,但每一行都大于256个字符,即string不适用,
必须用widestring,这样readln不能用,怎么办?
 
string[1000]
可以吗?
 
You're wrong!!!
string in delphi ,default is a large String ,it can save More than 255 chars,
wideString is used to process the WideChar( unicode )!
 
string 最大的长度为256,即只能string[255];
具体解决方法:
procedure TForm1.Button1Click(Sender: TObject);
var
f:textfile;
s:array[0..8000] of char;
s1:widestring;
filepath:string;
begin
filepath:=extractfilepath(application.ExeName);
assignfile(f,filepath+'whz.txt');
Reset(F);
readln(f,s);
showmessage(s);//显示读出的字符串
closefile(f);
end;
上面代码已经测试通过。
给分吧。
 
你们不会还在用D2.0吧?都什么时候了,String早就不止256了,只有ShortString才是以前
的256个字节,如同wison所说,现在的String的默认值是2G,够你用的了。
 
首先,String与WideString是两回事,后者是支持WideChar的,即双字节String.
另外,在Delphi3以上的版本中,String由编译控制符{$H}控制,如果是{$H+}(默认值)
则此String是Long String.如果是{$H-},则为ShortString,最大是256了。当然,如果
你显式指明长度如String[20],则是ShortString了,也即是说你的长度不能超过256。
 
尽管用吧,现在我们这儿正在用sting读文本呢,没问题的。
 
可以用Tstringlist
 
没问题的,我从文件读到string中的字符都有60k 都可以的
 
正如herald刚才所说:用Tstringlist.loadfromfile(filename);
一行语句就搞定了!
 
谢谢各位!
 
后退
顶部