máscara String

3 respostas
P

tenho uma String a = “01012009”;
quero deixar com a máscara 01/01/2009

e horas = "1230
quero deixar com a máscara 12:30
Como faço?

3 Respostas

T

Use StringBuilder

StringBuilder data = new StringBuilder("01012009");

		StringBuilder hora = new StringBuilder("1230");
		
		data.insert(2, "/");
		data.insert(5, "/");
		hora.insert(2, ":");

Da uma olhada para ver as diferenças.

String
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html

StringBuilder
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/StringBuilder.html

Por que não usa data?

Date
http://java.sun.com/j2se/1.5.0/docs/api/java/sql/Date.html

DateFormat
http://java.sun.com/j2se/1.4.2/docs/api/java/text/DateFormat.html

SimpleDateFormat
http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html

B

progJava:
tenho uma String a = “01012009”;
quero deixar com a máscara 01/01/2009

e horas = "1230
quero deixar com a máscara 12:30
Como faço?

Para Datas:

String maskDate(String input){
	return input.replaceAll("(\\d{2})(\\d{2})(\\d{4})","$1/$2/$3");
}

Para Horas:

String maskTime(String input){
	return input.replaceAll("(\\d{2})(\\d{2})","$1:$2");
}
P

Se são strings que representam data e hora, seria interessante vc utilizar objetos como Date ou Calendar para representa-los e, então, usar classes de formatação, como no exemplo abaixo.

Date data = new SimpleDateFormat("dd/MM/yyyy").parse("11/05/2006"); String dataBanco = new SimpleDateFormat("yyyy-MM-dd").format(data);

Criado 10 de outubro de 2009
Ultima resposta 11 de out. de 2009
Respostas 3
Participantes 4