读书人

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

发布时间: 2012-02-10 21:27:42 作者: rapoo

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; 

读书人网 >.NET

热点推荐