您的位置:首页 > 编程语言 > Java开发

把程序中的注释去掉的Java实现(初级版本)

2009-04-21 22:17 453 查看
import java.io.*;
import java.util.Scanner;

public class Expression {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File fileSource = new File("e://debug.txt");
File fileTarget = new File("e://debug2.txt");
BufferedReader br = new BufferedReader(new FileReader(fileSource));
BufferedWriter bw = new BufferedWriter(new FileWriter(fileTarget));

Scanner in = new Scanner(br);
while(in.hasNext())
{
String str  =  in.nextLine();
StringBuffer sb = new StringBuffer(str);
int i, j;

if((i = sb.indexOf("/*")) != -1 && (j = sb.indexOf("*/")) != -1)
sb.delete(i, j+2);

else if(i != -1)
{
sb.delete(i, sb.length());
bw.write(sb.toString());
bw.write("/r/n");
bw.flush();

do
{
if(in.hasNext())
{
str  =  in.nextLine();
sb = new StringBuffer(str);
}
else
sb = null;
}while((i = sb.indexOf("*/")) == -1);
if(in.hasNext())
{
str = in.nextLine();
sb = new StringBuffer(str);
}
else
sb = null;
}

if((i = sb.indexOf("//")) != -1)
sb.delete(i, sb.length());
if(sb != null)
{
if((i = sb.indexOf("/*")) != -1 && (j = sb.indexOf("*/")) != -1)
sb.delete(i, j+2);
bw.write(sb.toString());
bw.write("/r/n");
bw.flush();
}
}
br.close();
bw.close();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: