我从PrintWriter类生成.java文件。这些生成的文件包含多个嵌套for循环。为了正确缩进所有内容,我目前使用的是:
for(int j = 0; j < i + 2; j++)
{
pw.print(" ");
}
pw.println("{");
正好缩进单个括号。
显然,我可以做一个方法来做到这一点。我更想知道是否有一个库可以处理缩进和输出代码。
答案 0 :(得分:1)
我认为你可能最好不要在代码中执行此操作(我不知道任何格式化PrintWriter.out语句的库),而是在Java程序完成生成.java文件之后依赖于某些格式化程序。
这是一些格式化程序
http://mindprod.com/jgloss/beautifier.html
Jacobe - 是命令行驱动的,个人版是免费的。
答案 1 :(得分:1)
您可以使用javaparser解析解析后生成的带有标准缩进的输出
答案 2 :(得分:0)
使用Javaparser打印源代码(使用默认的漂亮打印机)就这么简单。
CompilationUnit cu = StaticJavaParser.parse(<path to source file>);
System.ou.println(cu.toString());