1

我想用java解析java代码。

问题是,当我将java代码传递给解析方法时,它不会将它作为字符串。如何转义要解析的代码

public class JavaParser {

    private int noOfLines;

    public void parse(String javaCode){
        String[] lines = javaCode.split("[\r\n]+");
        for(String line : lines)
            System.out.println(line);
    }



     public static void main(){
            JavaParser a = new JavaParser();
            a.parse("java code;");
     }
}
4

2 回答 2

2

您需要将 java 代码文件作为文本文件逐行或全部读取一次,例如:

FileInputStream inputStream = new FileInputStream("foo.java");
try {
    String everything = IOUtils.toString(inputStream);
} finally {
    inputStream.close();
}

然后你可以解析所有字符串。

于 2012-09-13T05:47:23.747 回答
0

也许你可以描述你想要达到的目标?

通常,它的 java 编译器(如 javac)用于解析 java 源文件。

快速谷歌搜索显示这个项目可以满足您的需求

从 java 6 开始,您可以调用编译器作为代码的一部分(java 公开了编译器 API)。如果您在阅读代码后尝试编译代码,这会很有帮助。一般来说,你可以阅读这篇文章,也许你会发现它有帮助

希望这可以帮助

于 2012-09-13T05:50:21.560 回答