S
siaosa
Unregistered / Unconfirmed
GUEST, unregistred user!
将一字符串用filestream.write方法写入一文件
用filestream.read方法从文件读入一字符串中,结果不对,这是怎么回事?
//将一字符串存入文件
procedure TForm1.Button1Click(Sender: TObject);
var
a:TFileStream;
Str:String;
begin
Str:='abcdefghijklmnopqrstuvwxyz';
a:=TFileStream.Create('001',fmCreate);
a.Write(Str,Length(Str));
a.Free;
end;
//将一文件里的内容读入字符串 [red]这个过程结果不对[/red]
procedure TForm1.Button2Click(Sender: TObject);
var
a:TFileStream;
Str,tmp:String;
i:Integer;
begin
a:=TFileStream.Create('001',fmOpenRead);
a.Position:=0;
while true do
begin
a.Read(tmp[1],100); //考虑到可能会读入大文件,进行分段读取,一次读取10个字符
Str:=Str+tmp; //保存进Str
if a.Position>=a.Size then break; //如果到文件结尾了,则退出
end;
a.Free;
end;
用filestream.read方法从文件读入一字符串中,结果不对,这是怎么回事?
//将一字符串存入文件
procedure TForm1.Button1Click(Sender: TObject);
var
a:TFileStream;
Str:String;
begin
Str:='abcdefghijklmnopqrstuvwxyz';
a:=TFileStream.Create('001',fmCreate);
a.Write(Str,Length(Str));
a.Free;
end;
//将一文件里的内容读入字符串 [red]这个过程结果不对[/red]
procedure TForm1.Button2Click(Sender: TObject);
var
a:TFileStream;
Str,tmp:String;
i:Integer;
begin
a:=TFileStream.Create('001',fmOpenRead);
a.Position:=0;
while true do
begin
a.Read(tmp[1],100); //考虑到可能会读入大文件,进行分段读取,一次读取10个字符
Str:=Str+tmp; //保存进Str
if a.Position>=a.Size then break; //如果到文件结尾了,则退出
end;
a.Free;
end;