14 个解决方案
#1
把这个字符串变成一个全局变量,替换的时候只需要替换这个字符串的赋值就可以了。
可以用Replace
可以用Replace
#2
可惜现在不是你所说的情况。
#3
我先搜索到当前所有文件需要替换的字符串,然后再一个个地Ctrl + V
#4
你这方法更慢了,可以Ctrl+R..., 确定之后可以在其它文件中直接F3就可以了。
#5
如果樓主是非必將此功能置入自己程序的話。直接DOWN一個幾百K的批量文本替換工具,比較省事,
#6
DELPHI中不提供这样的编辑功能,可以自己写个工具,查找替换就可以了。
#7
写代码自己检索pas文、窗体文件替换,以为又是宏的处理问题。
#8
首先使用
得到txt文件列表
再利用 memo.loadfromfile 逐一加载并且使用Replace替换内容不就可以啦?我没理解错吧?
function FindFile(Path: string): string; {搜索文件夹和文件}
var
Sr: TSearchRec;
CommaList: TStringList;
s: string;
dt: TDateTime;
begin
commalist := Tstringlist.Create;
try
Findfirst(path + '*.*', faAnyFile, sr);
if ((Sr.Attr and faDirectory) > 0) and (Sr.Name <> '.') then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('*' + s + sr.name);
end;
while findnext(sr) = 0 do
begin
if ((Sr.Attr and faDirectory) > 0) and (Sr.Name <> '..') then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('*' + s + sr.name);
end;
end;
FindClose(sr);
FindFirst(path + '*.txt', faArchive + faReadOnly + faHidden + faSysFile, Sr);
if Sr.Attr <> faDirectory then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('\' + s+ Format('%.0n', [sr.Size / 1]) + '|' + sr.name);
end; //Inttostr(
while findnext(sr) = 0 do
begin
if (sr.Attr <> faDirectory) then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('\' + s +Format('%.0n', [sr.Size / 1]) + '|' + sr.name);
end;
end;
FindClose(Sr);
except
end;
Result := commalist.Text; //Result是消息的 定义
commalist.Free;
end;
得到txt文件列表
再利用 memo.loadfromfile 逐一加载并且使用Replace替换内容不就可以啦?我没理解错吧?
#9
cnpack
#10
LZ要毕业设计的话加我QQ我帮你做了 20589816
#11
好吧,我承认我发错帖子了。SORRY。。
#12
安装一个untraedit,它可以在某目录下,替换所有某一类型文件的
#13
推荐
#14
以前自己写个一个这方面的小软件,LZ可以自己写的一个啊,思路无非是遍历文件夹然后搜索替换...
#1
把这个字符串变成一个全局变量,替换的时候只需要替换这个字符串的赋值就可以了。
可以用Replace
可以用Replace
#2
可惜现在不是你所说的情况。
#3
我先搜索到当前所有文件需要替换的字符串,然后再一个个地Ctrl + V
#4
你这方法更慢了,可以Ctrl+R..., 确定之后可以在其它文件中直接F3就可以了。
#5
如果樓主是非必將此功能置入自己程序的話。直接DOWN一個幾百K的批量文本替換工具,比較省事,
#6
DELPHI中不提供这样的编辑功能,可以自己写个工具,查找替换就可以了。
#7
写代码自己检索pas文、窗体文件替换,以为又是宏的处理问题。
#8
首先使用
得到txt文件列表
再利用 memo.loadfromfile 逐一加载并且使用Replace替换内容不就可以啦?我没理解错吧?
function FindFile(Path: string): string; {搜索文件夹和文件}
var
Sr: TSearchRec;
CommaList: TStringList;
s: string;
dt: TDateTime;
begin
commalist := Tstringlist.Create;
try
Findfirst(path + '*.*', faAnyFile, sr);
if ((Sr.Attr and faDirectory) > 0) and (Sr.Name <> '.') then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('*' + s + sr.name);
end;
while findnext(sr) = 0 do
begin
if ((Sr.Attr and faDirectory) > 0) and (Sr.Name <> '..') then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('*' + s + sr.name);
end;
end;
FindClose(sr);
FindFirst(path + '*.txt', faArchive + faReadOnly + faHidden + faSysFile, Sr);
if Sr.Attr <> faDirectory then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('\' + s+ Format('%.0n', [sr.Size / 1]) + '|' + sr.name);
end; //Inttostr(
while findnext(sr) = 0 do
begin
if (sr.Attr <> faDirectory) then
begin
dt := FileDateToDateTime(sr.Time);
s := FormatDateTime('yyyy-mm-dd hh:nn', dt);
commalist.add('\' + s +Format('%.0n', [sr.Size / 1]) + '|' + sr.name);
end;
end;
FindClose(Sr);
except
end;
Result := commalist.Text; //Result是消息的 定义
commalist.Free;
end;
得到txt文件列表
再利用 memo.loadfromfile 逐一加载并且使用Replace替换内容不就可以啦?我没理解错吧?
#9
cnpack
#10
LZ要毕业设计的话加我QQ我帮你做了 20589816
#11
好吧,我承认我发错帖子了。SORRY。。
#12
安装一个untraedit,它可以在某目录下,替换所有某一类型文件的
#13
推荐
#14
以前自己写个一个这方面的小软件,LZ可以自己写的一个啊,思路无非是遍历文件夹然后搜索替换...