Reputation: 4205
I generate .java files from a PrintWriter class. These generated files contain many nested for loops. To properly indent everything, I am currently using something like:
for(int j = 0; j < i + 2; j++)
{
pw.print(" ");
}
pw.println("{");
Just to properly indent the single parentheses.
Obviously, I could just make a method to do this. I'm more wondering if there's a library that will handle indention and such of outputted code.
Upvotes: 0
Views: 504
Reputation: 382
With Javaparser printing a source code (with default pretty printer) is as simple as that.
CompilationUnit cu = StaticJavaParser.parse(<path to source file>);
System.ou.println(cu.toString());
Upvotes: 0
Reputation: 11
you can either use javaparser to parse the output generated after parsing will be with standard indentation
Upvotes: 1
Reputation: 24910
I think you might be better off not doing that in your code ( I dont know of any library that formats PrintWriter.out statements ) and instead relying on some formatters after your Java program has completed generating your .java files.
Here's some formatters
http://mindprod.com/jgloss/beautifier.html
Jacobe -- is command-line driven and the personal edition is free.
Upvotes: 1