Delphi 的注释方式有两种:一种是传统的 Pascal 的 {} ,另外一种是 // 的单行注释。
下面的代码能将程序中的 //abcdefg 替换为 {//abcdefg} 这样的形式
program Project6; {$APPTYPE CONSOLE} //必须声明 Classes 否则 try..except 无法正常捕捉到异常 uses SysUtils,Classes; var fInput,fOutput:TextFile; Line:String; begin writeln(' Delphi comments "//" to Pascal comments "{}"'); writeln(' Usage "DC2PC filoname"'); writeln(' Powered by www.lab-z.com'); //如果没有输入文件名 if paramCount=0 then begin writeln('Please input file name!'); exit; end; //打开输入文件 AssignFile(fInput,ParamStr(1)); try Reset(fInput); Except writeln('Opening file '+ParamStr(1)+' error!'); exit; end; //替换后的结果放在 输入文件名.pas 文件中 AssignFile(fOutput,ParamStr(1)+'.pas'); rewrite(fOutput); //在输入文件中查找 // 的注释 while NOT eof(fInput) do begin readln(fInput,Line); if pos('//',Line)<>0 then begin insert('{',Line,pos('//',Line)); Line:=Line+'}'; end; //writeln(Line); writeln(fOutput,Line); end; CloseFile(fInput); CloseFile(fOutput); end.
上述代码在实际使用中还有一点小问题,比如 writeln(“abc //efg”); 这样的代码也会被替换,不过正常的代码应该不会有很多处这样的用法,出现问题手工修改一下就好了。