Formatando String (RESOLVIDO)

Estou tentando fazer um arquivo de remessa de boletos, e preciso formatar um valor, ele precisa ocupar 10 campos e recebo inteiros de 5 campos, os restantes á direita devem ser completados com espaço em branco.

estou tentando usar o NumberFormat:

 NumberFormat docum = new DecimalFormat(" ");
				docum.setMinimumIntegerDigits(10);
				
				String numeroDocumento = docum.format(documentos);

mas continua preenchendo de zeros e á esquerda :?

como faço pra preencher de espaços??

Valeu :slight_smile:

Você quer isto aqui (onde o b representa um espaço em branco)

78987bbbbb

ou isto aqui:

bbbbb78987

É que para o segundo caso, você pode usar simplesmente

String s = String.format ("%10d", 78987);

No primeiro caso, é um pouquinho mais chato porque os espaços são postos à direita. Mas se é esse o caso, experimente com:

String s = String.format ("%-10d", 78987);

Não se esqueça do sinal de menos.

O segundo! :smiley:

brigadão cara

Hum… o que é um “inteiro de 5 campos”? Eu poderia ter algo como “00001”? E você queria que fosse impresso como

1bbbbbbbbb

ou

00001bbbbb

Se for o primeiro caso, String.format ("%-10d", 1) é suficiente. Mas se for o segundo caso, use
String.format ("%05d ", 1) (eu pus manualmente os 5 espaços).

Funcionou agora :smiley:

valeu!!