Larguras variáveis ​​no método String.format do Java

Estou trabalhando em um projeto no qual preciso exibir árvores textuais. Estou tentando usar o método String.format do Java para simplificar o processo de formatação, mas tive problemas ao tentar aplicar larguras variáveis.

Atual eu tenho uma variável (um int) que é chamado de profundidade.

Eu tento fazer o seguinte:

String.format("%"+depth+"s"," ") + getOriginalText() + "\n";

No entanto, recebo o seguinte erro.

java.util.FormatFlagsConversionMismatchException: Conversion = s, Flags = 0

Alguma sugestão sobre como fazer isso, ou devo apenas me contentar com loops?

Obrigado pela ajuda!

questionAnswers(1)

yourAnswerToTheQuestion