带缩进的Java输出格式代码:

时间:2011-07-20 03:03:44

标签: java format

我从PrintWriter类生成.java文件。这些生成的文件包含多个嵌套for循环。为了正确缩进所有内容,我目前使用的是:

for(int j = 0; j < i + 2; j++)
{
    pw.print("    ");
}
pw.println("{");

正好缩进单个括号。

显然,我可以做一个方法来做到这一点。我更想知道是否有一个库可以处理缩进和输出代码。

3 个答案:

答案 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());