Olá galera gostaria de saber se já tenho pronto na classe String uma método que concatene pra mim caracteres (no meu caso espaços)como esse método statico que implementei ? será que reinventei a roda?
staticpublicStringModificaString(Stringpalavra){
if(palavra.length()<22){
inttamanho=0;StringSpace=" ";tamanho=22-palavra.length();for(inti=0; i < tamanho;i++){Space=Space+" ";}
palavra=palavra.concat(Space);}
returnpalavra;}
o tamanho eu defini como 22 mas esse tamanho pode ser generico se colocamos ele na chamada do metodo !!!!
Um abraço a todos e obrigado pela atenção. :lol:
Eu tenho uma variavel que pode variar de tamanho até 22 e preciso concatena -la com com uma label fixa , para que essa label sempre fique no mesmo lugar no meu relatório eu tive que implementar esse método por que senão ela ficaria em locais diferentes prejudicando assim o alinhamento que tenho no layout desse relatorio .
Mas é só marcar a opção de centralizado, isso ai é gambi
Você está usando o IReport?
Andergt6
marcio_gs:
Mas é só marcar a opção de centralizado, isso ai é gambi
Você está usando o IReport?
Eu estou criando o relatório para exibir em um frame html e por isso crio uma lista de Strings , e passo essa lista pela Session e quem recebe ela é uma jsp . Eu poderia usar IReport mas por se tratar de uma manutenção não posso mudar as caracteristicas do projeto !!!
M
marcio_gs
Entendi… Bom, procurei na API e não encontrei um método que faça algo assim, pelo menos na classe String.
T
thingol
Você quer completar com brancos à direita, não? Use String.format.
Note que o sinal de “-” serve para deixar alinhado à esquerda (se você omitisse o sinal, ficaria alinhado à direita), “s” serve para indicar que quero imprimir uma String (ou algum objeto, via toString()) , “.20” quer dizer que devem ser impressos no máximo 20 caracteres, e “20” quer dizer que devem ser impressos no mínimo 20 caracteres. Como escrevi “20.20” isso quer dizer que quero que sejam impressos exatamente 20 caracteres, mesmo que seja necessário o truncamento.
Se você não pode truncar a string (se ficar maior pode ficar desalinhado), então você pode usar “%-20s”.
Andergt6
rs rs rs é eu tambem , bom em todo caso funciona !! o que eu fiz mas se pudesse usar uma da propria API seria bem melhor !!! Valeu pela ajuda !!!
Abraço !!! se vc achar algo posta pra eu testa!! Vlw
Andergt6
thingol:
Você quer completar com brancos à direita, não? Use String.format.
Note que o sinal de “-” serve para deixar alinhado à esquerda (se você omitisse o sinal, ficaria alinhado à direita), “s” serve para indicar que quero imprimir uma String (ou algum objeto, via toString()) , “.20” quer dizer que devem ser impressos no máximo 20 caracteres, e “20” quer dizer que devem ser impressos no mínimo 20 caracteres. Como escrevi “20.20” isso quer dizer que quero que sejam impressos exatamente 20 caracteres, mesmo que seja necessário o truncamento.
Se você não pode truncar a string (se ficar maior pode ficar desalinhado), então você pode usar “%-20s”.
Valeu vou testar !! valeu pela força!!
Andergt6
Deu certo , rs rs rs reiventei a roda sem precisar !!! Valeu galera!!!
ngduran
Me corrija se eu estiver errado, vc quer preencher o final da String com espaços em branco?
Fiz um código com o metodo concat. Vc apenas deve trocar o “.” por " "
Fiz com o ponto para vizualizar o resultado.
staticpublicStringModificaString(Stringpalavra){for(inti=0; i < 22 - palavra.length(); i++) {palavra=palavra.concat(".");}
returnpalavra;}