RT,举个例子,比如E盘下有两个TXT文件,文件名分别为1.txt和2.txt   1.txt内容如下:Active Connections  Proto  Local Address          Foreign Address        State
  TCP    111.11.1.111:1975      221.181.70.12:5926     ESTABLISHED     2.txt内容如下:Active Connections  Proto  Local Address          Foreign Address        State
  TCP    111.11.1.111:1975      221.181.70.12:5926     ESTABLISHED   TCP    111.11.1.111:1111      169.254.241.33:2222     ESTABLISHED   显然2.txt比1.txt多了一排,那么就把这一排输出到3.txt 以上都是人工操作,如何用delphi实现高手给具体代码,uses要用到什么,也说下 PS:补充下我这txt的由来,就是在cmd中输入netstat -n的结果,然后将结果输出到txt文档中,所以文档的格式都是这样的

解决方案 »

  1.   

    var
      F: Text;procedure TForm1.FormCreate(Sender: TObject);
    var
      s,sl,sw: string;
    begin
      AssignFile(F, ExtractFilePath(ParamStr(0)) + '3.txt');
      Rewrite(F);
      CloseFile(F);
      AssignFile(F, ExtractFilePath(ParamStr(0)) + '1.txt');
      Reset(F);
      while not Eof(F) do begin
        Readln(F, sl);
        s:=s+'+'+sl+'+';
      end;
      CloseFile(F); 
      AssignFile(F, ExtractFilePath(ParamStr(0)) + '2.txt');
      Reset(F);
      while not Eof(F) do begin
        Readln(F, sl);
        if pos('+'+sl+'+',s)=0 then
        sw:=sw+sl+#13#10;
      end;
      CloseFile(F);
      afile(sw);
    end;procedure TForm1.afile(li: string);
    begin
      try
        AssignFile(F, ExtractFilePath(ParamStr(0)) + '3.txt');
        Append(F);
        Writeln(F, li);
        CloseFile(F);
      except
      end;
    end;
      

  2.   

    编译时出错了= =
    Build
      [Error] Unit1.pas(50): Undeclared identifier: 'afile'
      [Error] Unit1.pas(54): Undeclared identifier: 'afile'
      [Error] Unit1.pas(59): Undeclared identifier: 'li'
      [Fatal Error] Project2.dpr(5): Could not compile used unit 'Unit1.pas'
      

  3.   

    你加一句procedure afile(li: string);到过程定义里。
    这个是自定义的过程。建议你把pascal语法读一遍。如果你小学曾经毕业的话,应该半天就可以看完pascal语法了。