I'm working on a project in which I need to display textual trees. I'm trying to use Java's String.format method to simplify the formatting process, but I ran into trouble when trying to apply variable widths.
Current I have a variable (an int) which is called depth.
I try to do the following:
String.format("%"+depth+"s"," ") + getOriginalText() + "\n";
However I get the following error.
java.util.FormatFlagsConversionMismatchException: Conversion = s, Flags = 0
Any suggestions on how to do this, or should I just settle for loops?
Thanks for the help!
This works:
int depth = 5;
String str= "Hello"+ String.format("%"+depth+"s"," ") + "world" + "\n";
System.out.println(str);
It prints 5 while spaces in between.
Hello World.
Please check you code and make sure that depth
is assigned with a valid int
value. Most likely that (invalid value in depth
) is the problem.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With