Zéychin
Zéychin

Reputation: 4205

Java Output Format With Indents As Code:

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

Answers (3)

jpl
jpl

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

neelesh
neelesh

Reputation: 11

you can either use javaparser to parse the output generated after parsing will be with standard indentation

Upvotes: 1

Kal
Kal

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

Related Questions