Duvida preencher campo String com espaço

Caros,

uma duvida tenho que preencher
um arquivo texto com campos formatados
exemplo:

0001RUA SEM SAIDA

o campo numero já preenchi com zeros a esquerda
minha duvida é o campo String que tem 32 posições
por exemplo:

RUA SEM SAIDA

tem 13 posições como posso fazer pra preencher
com 19 espaços na frente pra completar 32 posições…

abs

[code]String campo = “Vinicius”;

while (campo.length() < 32) {
campo = " " + campo;
}[/code]

Concatene com uma string de 32 espaços, e a seguir obtenha as primeiras 32 posições da string resultante.

String espacos32 = "........"; // ponha 32 espaços aqui, oras!
String s = "RUA SEM SAIDA";
s += espacos32;
s = s.substring (0, 32);

Outra forma é fazer isto aqui:

String s = "RUA SEM SAIDA";
s = String.format ("%-32.32s", s);

mas admito que isso é um pouco mais difícil de entender e mais lento.

Para preencher um campo numérico com zeros à esquerda, o modo mais correto é usar String.format. Exemplo:

int n = 1;
String s = String.format ("%04d", n); // deve resultar "0001", ou seja: 0 = zeros à esquerda, 4 = 4 posições, d = número inteiro.

sem pensar duas vezes, o String.format (…) é a melhor solução
…só em lembrar da linguagem C, parece até que a função(metodo) executa mais rápido :wink:

obrigado a todos…valeu…