小编Sha*_*ane的帖子

替换文件中的字符(更快的方法)

我们经常用另一个"好"字符替换文件中的非理想字符.

界面是:

procedure cleanfileASCII2(vfilename: string; vgood: integer; voutfilename: string);
Run Code Online (Sandbox Code Playgroud)

用我们可能调用的空格替换所有非desirables,cleanfileASCII2(original.txt,32,cleaning.txt)

问题是这需要相当长的时间.有没有比展示更好的方法呢?

procedure cleanfileASCII2(vfilename: string; vgood: integer; voutfilename:
string);
var
  F1, F2: file of char;
  Ch: Char;
  tempfilename: string;
  i,n,dex: integer;
begin
   //original
    AssignFile(F1, vfilename);
    Reset(F1);
    //outputfile
    AssignFile(F2,voutfilename);
    Rewrite(F2);
      while not Eof(F1) do
      begin
        Read(F1, Ch);
        //
          n:=ord(ch);
          if ((n<32)or(n>127))and (not(n in [10,13])) then
             begin // bad char
               if vgood<> -1 then
                begin
                ch:=chr(vgood);
                Write(F2, Ch);
                end
             end
           else   //good char
            Write(F2, Ch);
      end;
    CloseFile(F2);
    CloseFile(F1);
end;
Run Code Online (Sandbox Code Playgroud)

delphi ascii replace file

3
推荐指数
1
解决办法
3862
查看次数

标签 统计

ascii ×1

delphi ×1

file ×1

replace ×1