Classe que manipula Data (mysql)

3 respostas
woquiton

Oi Pessoal

Estou com um problema, conheço pouco sobre, mas é o seguinte, no mysql a data possui o formato (aaaa-mm-dd), eu estou precisando, por que realmente nao sei como fazer, uma classe (metodo), que receba um valor no formato aaaa/mm/dd e retorne dd/mm/aaaa.

Aguém já fez isso, ou tem a solução para este problema?

Agradeço se me enviarem esta classe (método).

Obrigado

3 Respostas

Luiz-SP

São Paulo-SP

Putz, vc é woquiton que estudou na Fatec-SP? Não entendi, vc quer escrever ou quer algo já pronto? :shock:

Luiz Claudio F. dos Santos

woquiton

Sou eu sim fiu… tamu ae aprendendo java.

manda um email pra mim em [email removido], que te passo msn.

Eu to querendo pronto… procurei no google, mas nao achei nenhuma simples como quero…

Obrigado,

Woquiton

woquiton

Encontrei o q queria, vai que alguem precise…

import java.util.<em>;

import <a href="http://java.io">java.io</a>.</em>;

import java.text.*;

public class Data {

/************************************************

//  retorna data no formato ‘aaaa-mm-dd hh:mm:ss’

*************************************************/

public static String getDataAtual() {

Calendar cal = Calendar.getInstance(TimeZone.getTimeZone(GMT-3:00));

java.text.SimpleDateFormat sdf =

new java.text.SimpleDateFormat(yyyy-MM-dd HH:mm:ss);
sdf.setTimeZone(TimeZone.getTimeZone("GMT-3:00")); 
   return sdf.format(cal.getTime());

}

/************************************************

//  formato AMD ‘aaaa-mm-dd hh:mm:ss’

//  formato DMA ‘dd-mm-aaaa hh:mm:ss’

*************************************************/

public static String inverteData(String d , String sFormato){

String data = null;
if (d == null) 
  return null; 
else{ 
 if (sFormato == "AMD") { 
    data =  d.substring(8,10) + "/" + 
            d.substring(5,7)  + "/" + 
            d.substring(0,4); 
 } 
 else { 
    data =  d.substring(6,10) + "/" + 
            d.substring(3,5)  + "/" + 
            d.substring(0,2); 
 } 
} 
if (d.length() > 10)          
   data += d.substring(10,d.length()); 
return data;

}

/************************************************

//  retorna int com o dia atual

*************************************************/

public static int getDiaAtual() {

String sDataAtual = getDataAtual();

String sDiaAtual = sDataAtual.substring(8,10);

return Integer.parseInt(sDiaAtual);

}
/************************************************

//  retorna int com o mes atual

*************************************************/

public static int getMesAtual() {

String sDataAtual = getDataAtual();

String sMesAtual = sDataAtual.substring(5,7);

return Integer.parseInt(sMesAtual);

}
/************************************************

//  retorna int com o ano atual

*************************************************/

public static int getAnoAtual() {

String sDataAtual = getDataAtual();

String sAnoAtual = sDataAtual.substring(0,4);

return Integer.parseInt(sAnoAtual);

}
/************************************************

// compara datas no formato das datas ‘aaaa-mm-dd’

// Utiliza o mesmo padrão de retorno do método compareTo:

//           -1 : data1 menor

//            0 : data1 e data2 iguais

//            1 : data1 maior

// Se data2 não informada, assume data corrente

// Não trabalha com horas

*************************************************/

public static int comparaDatas(String data1, String data2) {

if (data1.equals(""))

return -1;
Date date1 = new Date(); 
java.text.SimpleDateFormat sdf1 = new java.text.SimpleDateFormat("yyyy-MM-dd"); 
sdf1.setTimeZone(TimeZone.getTimeZone("GMT-3:00")); 

Date date2 = new Date(); 
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT-3:00")); 
java.text.SimpleDateFormat sdf2 = new java.text.SimpleDateFormat("yyyy-MM-dd"); 
sdf2.setTimeZone(TimeZone.getTimeZone("GMT-3:00")); 

try { 
  date1 = sdf1.parse(data1); 

  if (data2.equals(""))  // obtem data corrente 
    date2 = sdf2.parse(sdf2.format(cal.getTime())); 
  else 
    date2 = sdf2.parse(data2); 

} catch (Exception e) { 
  System.out.println(e); 
} 

int i = date1.compareTo(date2); 

return i;

}
}

Criado 27 de julho de 2004
Ultima resposta 27 de jul. de 2004
Respostas 3
Participantes 2