Folks,
como posso fazer para converter um numero para string colocando zeros
a esquerda.
O que tenho :
150
e como tem que ficar
000000150
o tamanho que tem que ficar é de 9 posições …
Se alguém puder me ajudar agradeceria…
abs
Folks,
como posso fazer para converter um numero para string colocando zeros
a esquerda.
O que tenho :
150
e como tem que ficar
000000150
o tamanho que tem que ficar é de 9 posições …
Se alguém puder me ajudar agradeceria…
abs
Uma solução, talvez apareça outra melhor.
Para converter um int para String:
String con.valueOf(var_do_numero);
adicionar zeros:
String numFormatado = (" 000000" + con);
como é String vc não soma, concatena.
Solução já dada no forum.
[code]int i = 150;
String r = String.format("%09d", i);[/code]
String addZeros(String str){
while(str != null && str.length() < 9)
str = "0" + str;
return str;
}
O melhor jeito que eu vejo:
int i = 150;
String r = String.format("%09d", i);
Cuidado com POG!
valeu…escolhi a ultima opção …valeu
/**
* Formata um numero em String colocando zeros a esquerda conforme passado via parametro
* Recebe atributo numero e atributo CasaEsquerda qtde zero a esquerda do numero
* @return String variavel formatada com zero(s) a esquerda
*/
*/
public static String zeroEsquerda( int numero , int casaEsquerda){
String formato ="";
String resultado ="";
Integer[] i = new Integer[1];
i[0] = new Integer(numero);
try{
if (casaEsquerda == 1){
formato="%01d";
}else if (casaEsquerda == 2){
formato="%02d";
}else if (casaEsquerda == 3){
formato="%03d";
}else if (casaEsquerda == 4){
formato="%04d";
}else if (casaEsquerda == 5){
formato="%05d";
}else if (casaEsquerda == 6){
formato="%06d";
}else if (casaEsquerda == 7){
formato="%07d";
}else if (casaEsquerda == 8){
formato="%08d";
}else if (casaEsquerda == 9){
formato="%09d";
}else if (casaEsquerda == 10){
formato="%010d";
}
resultado = String.format(formato,i);
}catch(Exception e){
e.printStackTrace();
System.out.println("Erro na Util.zeroEsquerda = "+e);
}
return resultado;
}
nossa…
isso sim foi POG…
Espero que isso ajude:
public class AddZeros {
public static void main(String[] args) {
int x = 150;
String num=null;
num = num.valueOf(x);
System.out.println("000000"+ num);
// 000000150 será impresso
}
}
Elegante!
num = num.format("%09d", x);
[quote=alucardeck]nossa…
isso sim foi POG…[/quote]
Rindo do POGzão, ao som de Wild Thing (The Troggs) e pensando em bolar um campeonato POG. Bora?
[quote=haroldojribeiro]Espero que isso ajude:
[code]
public class AddZeros {
public static void main(String[] args) {
int x = 150;
String num=null;
num = num.valueOf(x);
System.out.println("000000"+ num);
// 000000150 será impresso
}
}
[/code][/quote]
se for pra fazer assim…
não seria mais facil
System.out.println(“000000”+x); ?

[quote=Sergio Figueras][quote=alucardeck]nossa…
isso sim foi POG…[/quote]
Rindo do POGzão, ao som de Wild Thing (The Troggs) e pensando em bolar um campeonato POG. Bora?[/quote]
kkkkkkkkkkkk
verdade…
tinha q ir esse post pro topico
http://www.guj.com.br/posts/list/30384.java
Pra ficar menos feio:
**
* Formata um numero em String colocando zeros a esquerda conforme passado via parametro
* Recebe atributo numero e atributo CasaEsquerda qtde zero a esquerda do numero
* @return String variavel formatada com zero(s) a esquerda
*/
public static String zeroEsquerda( int numero , int casaEsquerda){
StringBuilder formato = new StringBuilder();
String resultado = "";
//PRA QUE ESSE ARRAY????
Integer[] i = new Integer[1];
i[0] = new Integer(numero);
try{
formato.append("%0").append(casaEsquerda).append("d");
resultado = String.format(formato.toString(),numero);
}catch(Exception e){
e.printStackTrace();
System.out.println("Erro na Util.zeroEsquerda = "+e);
}
return resultado;
}
[quote=paribe]valeu…escolhi a ultima opção …valeu
[code]
/**
* Formata um numero em String colocando zeros a esquerda conforme passado via parametro
* Recebe atributo numero e atributo CasaEsquerda qtde zero a esquerda do numero
* @return String variavel formatada com zero(s) a esquerda
*/
*/
public static String zeroEsquerda( int numero , int casaEsquerda){
String formato ="";
String resultado ="";
Integer[] i = new Integer[1];
i[0] = new Integer(numero);
try{
if (casaEsquerda == 1){
formato="%01d";
}else if (casaEsquerda == 2){
formato="%02d";
}else if (casaEsquerda == 3){
formato="%03d";
}else if (casaEsquerda == 4){
formato="%04d";
}else if (casaEsquerda == 5){
formato="%05d";
}else if (casaEsquerda == 6){
formato="%06d";
}else if (casaEsquerda == 7){
formato="%07d";
}else if (casaEsquerda == 8){
formato="%08d";
}else if (casaEsquerda == 9){
formato="%09d";
}else if (casaEsquerda == 10){
formato="%010d";
}
resultado = String.format(formato,i);
}catch(Exception e){
e.printStackTrace();
System.out.println("Erro na Util.zeroEsquerda = "+e);
}
return resultado;
}
[/code][/quote]
não me leve a mal…
mas praq tanto IF ELSE ???
String formato ="";
int casaEsquerda = //vc escolhe;
formato="%0"+casaEsquerda+“d”;
kkkkkkkkk
valeu pela dica…
public static String zeroEsquerda( int numero , int casaEsquerda){
String formato ="";
String resultado ="";
Integer[] i = new Integer[1];
i[0] = new Integer(numero);
try{
formato="%0"+casaEsquerda+"d";
resultado = String.format(formato,i);
}catch(Exception e){
e.printStackTrace();
System.out.println("Erro na Util.zeroEsquerda = "+e);
}
return resultado;
}