delphi 高速替换大文本字符串内容  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 高速替换大文本字符串内容


普通替换:
var
  Str: string;
  i: Integer;
  T1, T2: Integer;
begin
  T1 := GetTickCount;
  try
    for i := 0 to M.Lines.Count - 1 do  //M 加载文本得代码省略自己搞
    begin
      Str := Str + M.Lines[i];
    end;
    T2 := GetTickCount;
   // ShowMessage(Inttostr(T2 - T1));
    M.Lines.BeginUpdate;
    M.Lines.Text := Str;
  finally
    M.Lines.EndUpdate;
  end;
end;

高速替换:


感谢汗血宝宝分享


TFile IOUtils 单元主要就是三个结构: TDirectory、TPath、TFile,
var
  SW: TStopwatch;
  s: string;
begin
  SW := TStopwatch.StartNew;
  s := TFile.ReadAllText('D:\9万行文本.txt',TEncoding.UTF8).Replace(#13#10, '');
  TFile.WriteAllText('D:\9万行文本_.txt', s,TEncoding.UTF8);
  SW.Stop;
  ShowMessage(SW.ElapsedMilliseconds.ToString);
end;

感谢黑夜杀手提供


在提供一个老外得汇编方案:一种高效的自定义字符串替换函数


推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.03856086730957 seconds