我是这样写的,但是每次执行的时候都是从第一行写起
如何才能在每次点击button1的时候写进一行呢(从文件的末尾开始)。
请各位不吝赐教procedure TForm1.Button1Click(Sender: TObject);var
onerow:string;
statistics:tstringlist;begin
statistics:= TStringList.Create;
onerow:='abcdefasfjdkfjsalfsadfsdfsf';
statistics.Add(onerow);
statistics.SaveToFile('test.txt');
statistics.Free;
end;
如何才能在每次点击button1的时候写进一行呢(从文件的末尾开始)。
请各位不吝赐教procedure TForm1.Button1Click(Sender: TObject);var
onerow:string;
statistics:tstringlist;begin
statistics:= TStringList.Create;
onerow:='abcdefasfjdkfjsalfsadfsdfsf';
statistics.Add(onerow);
statistics.SaveToFile('test.txt');
statistics.Free;
end;
data:datatype;...
append(f);
write(f,data);
为什么不用textfile呢
var
OneRow:string;
MyFile: TextFile;
begin
OneRow := 'abcdefasfjdkfjsalfsadfsdfsf';
AssignFile(MyFile, 'C:\TEMP.txt');
Append(MyFile);
WriteLN(MyFile, OneRow);
CloseFile(MyFile);
end;
////////////////////////////////////////
procedure TForm1.Button1Click(Sender: TObject);var
onerow:string;
statistics:tstringlist;begin
statistics:= TStringList.Create;
statistics.loadfromfile('test.txt');
onerow:='abcdefasfjdkfjsalfsadfsdfsf';
statistics.Add(onerow);
statistics.SaveToFile('test.txt');
statistics.Free;
end;
可以用
function FileSeek(Handle, Offset, Origin: Integer): Integer; overload;
Origin(起始) 0 :定位文件开头.
1 :定位文件中央.
2 :定位在文件尾.
Offset: 偏移量.
handle 文件句柄.在Delphi帮助上的例程:
procedure TForm1.Button1Click(Sender: TObject);var
iFileHandle: Integer;
iFileLength: Integer;
iBytesRead: Integer;
Buffer: PChar;
i: Integer
begin
if OpenDialog1.Execute then
begin
try
iFileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);
iFileLength := FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
Buffer := PChar(AllocMem(iFileLength + 1));
iBytesRead := FileRead(iFileHandle, Buffer^, iFileLength); FileClose(iFileHandle);
for i := 0 to iBytesRead-1 do
begin
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[1,i+1] := Buffer[i];
StringGrid1.Cells[2,i+1] := IntToStr(Integer(Buffer[i]));
end;
finally
FreeMem(Buffer);
end;
end;
end;自己看吧~~~~!
//写
procedure TForm1.Button1Click(Sender: TObject);
var
Stream:TFileStream;
c:array[0..100] of char;
begin
c:='11你想要写入的信息';
Stream:=TFileStream.Create('FileNa.AA',fmOpenReadWrite);
Stream.Seek(0,soFromEnd );
Stream.Write(c,100);
Stream.Free;
end;// 读
procedure TForm1.Button2Click(Sender: TObject);
var
Stream:TFileStream;
Inf:String;
c:array[0..100] of char;
i:integer;
begin
Stream:=TFileStream.Create('FileNa.AA',fmOpenRead);
Stream.Seek(soFromBeginning,100 );
Stream.Read(c,100);
for i:=0 to 100 do
begin
inf:=inf+c[i];
end;
Memo1.Lines.Add(c);
Stream.Free;
end;