创建一个S:TStringList;
S:=TStringList.create;
打开文件
S.loadfrom('E:\temp.txt');
在用ReplaceDialog替换,
下面是ReplaceDialog的一个例子,但如果你愿意的话,可以自己作一个替换函数
procedure TForm1.ReplaceDialog1Replace(Sender: TObject);var
SelPos: Integer;
begin
with TReplaceDialog(Sender) do
begin
{ Perform a global case-sensitive search for FindText in Memo1 }
SelPos := Pos(FindText, Memo1.Lines.Text);
if SelPos > 0 then
begin
Memo1.SelStart := SelPos - 1;
Memo1.SelLength := Length(FindText);
{ Replace selected text with ReplaceText }
Memo1.SelText := ReplaceText;
end
else MessageDlg(Concat('Could not find "', FindText, '" in Memo1.'), mtError, [mbOk], 0); end;end;
S:=TStringList.create;
打开文件
S.loadfrom('E:\temp.txt');
在用ReplaceDialog替换,
下面是ReplaceDialog的一个例子,但如果你愿意的话,可以自己作一个替换函数
procedure TForm1.ReplaceDialog1Replace(Sender: TObject);var
SelPos: Integer;
begin
with TReplaceDialog(Sender) do
begin
{ Perform a global case-sensitive search for FindText in Memo1 }
SelPos := Pos(FindText, Memo1.Lines.Text);
if SelPos > 0 then
begin
Memo1.SelStart := SelPos - 1;
Memo1.SelLength := Length(FindText);
{ Replace selected text with ReplaceText }
Memo1.SelText := ReplaceText;
end
else MessageDlg(Concat('Could not find "', FindText, '" in Memo1.'), mtError, [mbOk], 0); end;end;
var
f: TFileStream;
P: Pointer;
s: String;
begin
f := TFileStream.Create('h:\test.txt',fmOpenRead);
GetMem(P,f.Size);
f.Read(P^,f.Size);
s := PChar(P);
FreeAndNil(f);
s := StringReplace(s,'"','+"',[rfReplaceAll]);
P := PChar(s);
f := TFileStream.Create('h:\test.txt',fmOpenWrite);
f.Write(P^,Length(s));
FreeMem(P);
FreeAndNil(f);
end;—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”或者去掉';
I.Desire := '加不加分随你';
—————————————————————————————————
s := StringReplace(s, '"', '+"', [rfReplaceAll]);
上面的rfReplaceAll表示替换全部。函数参数如下:
StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;