首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Delphi怎么实现删除批处理文件中重复项

2012-02-10 
Delphi如何实现删除批处理文件中重复项求哪位帮忙给段delphi程序 实现自动删除批处理文件中的重复项中的一

Delphi如何实现删除批处理文件中重复项
求哪位帮忙给段delphi程序 实现自动删除批处理文件中的重复项中的一项
例如 1300000000
  1300000000
  1301111111
  1301111111
  1301111111
  1302222222
  1302222222
删除其中的1301111111的一个 保证剩下2个 下面的顺次上升一行 然后执行该批处理文件

本人为delphi新手 望哪位大大赐教


[解决办法]

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var        ss: TStringList;        i: integer;        md: boolean;begin        ss := TStringList.Create;        ss.LoadFromFile('d:\in.bat');        md := False;        i:=1;        while i<ss.Count do        begin                if ss[i]=ss[i-1] then                begin                        if md then                        begin                                ss.Delete(i);                                continue;                        end;                        md := True;                end                else                        md := False;                Inc(i);        end;        ss.SaveToFile('d:\out.bat');        ss.Destroy;        WinExec('d:\out.bat',SW_SHOWNORMAL);end;
[解决办法]
略改一下
Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var        ss: TStringList;        i: integer;        md: integer;begin        ss := TStringList.Create;        ss.LoadFromFile('d:\in.bat');        md := 0;        i:=1;        while i<ss.Count do        begin                if ss[i]=ss[i-1] then                begin                        if md>2 then                        begin                                ss.Delete(i);                                continue;                        end;                        Inc(md);                end                else                        md := 0;                Inc(i);        end;        ss.SaveToFile('d:\out.bat');        ss.Destroy;        WinExec('d:\out.bat',SW_SHOWNORMAL);end; 

热点排行