[JME]Conversão de string para date e double

3 respostas
S

Pessoal tentei fazer as conversões mas não tive sucesso:
Tenho as strings por exemplo: “12/08/2011” e “20.5”

Como converto para date sem pegar a parte da semana e hora? Apenas 12/08/2011. Tentei com Callendar, mas nada!
Ja double, usando Double.parseDouble fica algo como 200E5. Como converter para 20.5?

Obrigado

3 Respostas

isaiaspf
Soleo, você pode usar como base:
/** 
 * Converte data formatada (string) para tipo data. 
 *  
 * @param date 
 * @param mask - Máscara da data de entrada. 
 * @return 
 * @author Isaias Pfaffenseller 
 */  
public static Date convertDate(String date, String mask)  
{  
   SimpleDateFormat formatter = new SimpleDateFormat(mask);  
  
   try  
   {  
	  return formatter.parse(date);  
   }  
   catch(Exception e)  
   {  
	  return null;  
   }  
}  

/**
 * Converte número formatado (string) para tipo number.
 * 
 * @param number
 * @param mask - Máscara do número de entrada.
 * @return
 * @author Isaias Pfaffenseller
 */
public static Number convertNumber(String number, String mask)
{
	DecimalFormat formatter = new DecimalFormat(mask);

	try
	{
		return formatter.parse(number);
	}
	catch(Exception e)
	{
		return null;
	}
}
Usando seus dados:
Date data = convertDate("12/08/2011", "dd/MM/yyyy");
Double numero = (Double) convertNumber("20.5", "#,##0.00");
Abraço.
S

isaiaspf
SimpleDateFormat não é uma classe do JSE?
Vlw!

S

Con alguns exemplos por ai sando Calendar consegui pegar uma data e converter para o seguinte formato:

cal.get(Calendar.DATE) cal.get(Calendar.MONTH) cal.get(Calendar.YEAR)

a saida é algo do tipo: dd/mm/yyyy
Tendo uma variável do tipo Date, como faço para inserir apenas este formato na minha data? E para retorná-la como data, como faço sem o conteúdo ‘WED Aug 17 hh:mm:ss GMT 2011’ apenas dd/mm/yyyy?

Criado 12 de agosto de 2011
Ultima resposta 17 de ago. de 2011
Respostas 3
Participantes 2