还有,对于txt用textflie文件类型的函数比较方便啊 或者用 Myfile:Tstrings; i:integer; begin try Myfile.LoadFromFile('aaa.dat'); for i:=0 to Myfile.Count do StringReplace(Myfile.Strings[i],a,b,[rfReplaceAll]); Myfile.SaveToFile(Myfile.SaveToFile('aaa.dat');); end;
楼上的代码必然无效。。 //TStrings是无法创建实例的 Myfile:TStringList; i:integer; begin MyFile := TStrignList.Create; try Myfile.LoadFromFile('aaa.dat'); //Count要-1 for i:=0 to Myfile.Count -1 do //StringReplace是函数 MyFile[I] := StringReplace(Myfile[I],a,b,[rfReplaceAll , rfIgnoreCase]); Myfile.SaveToFile(Myfile.SaveToFile('aaa.dat');); finally MyFile.Free; end; end;
var
iFileHandle: Integer;
Buffer: single;
begin try
iFileHandle := FileOpen('aaa.dat', fmOpenwriteRead);
FileSeek(iFileHandle,13,0); //指向起点第一个字节向后,偏移的13个字节
FileRead(iFileHandle, Buffer, 4);//在该位置读取4个字节到Buffer
FileSeek(iFileHandle,13,0); //指针又指回来
FileWrite(iFileHandle, Buffer, 4);//同样的位置覆盖
finally
FileClose(iFileHandle);
end;
end;
或者用
Myfile:Tstrings;
i:integer;
begin try
Myfile.LoadFromFile('aaa.dat');
for i:=0 to Myfile.Count do
StringReplace(Myfile.Strings[i],a,b,[rfReplaceAll]);
Myfile.SaveToFile(Myfile.SaveToFile('aaa.dat'););
end;
Myfile:TStringList;
i:integer;
begin
MyFile := TStrignList.Create;
try
Myfile.LoadFromFile('aaa.dat');
//Count要-1
for i:=0 to Myfile.Count -1 do
//StringReplace是函数
MyFile[I] := StringReplace(Myfile[I],a,b,[rfReplaceAll , rfIgnoreCase]);
Myfile.SaveToFile(Myfile.SaveToFile('aaa.dat'););
finally
MyFile.Free;
end;
end;