Formatando Hora

Tenho esse método que formata um hora (DATE) e retorna uma String… Eu queria formatar a hora (DATE) e retornar um Date tmb… Como faço isso?

  public String formatHour(Date hour){
 
    String dt = null;
	 
    try{	 
      SimpleDateFormat dtFormat = new SimpleDateFormat("hh:mm:ss");
      String strDate = dtFormat.format(hour);
      dt = strDate;     
    }
    catch(Exception e){
      //System.out.println("Não foi possível converter a hora");
     //System.out.println(e.toString());
    }
    return dt;
  }

adriano blz

cara não entendi direito a sua pergunta , vc quer retornar uma data e uma hora no mesmo método é isso???

Isso mesmo Diego,

Eu quero criar um método que passa um Date e retorne um Date… Essa minha rotina retorna um string e eu queria q retornasse um Date…

public Date formatHour(Date hour){

}

Abs.
Adriano

Isso mesmo Diego!

Eu quero retornar um Date, pois minha função retorna uma String, mas preciso q retorne um Date no formato (hh:mm:ss).

abs.
Adriano

Adriano,

Não existe forma de “formatar” um objeto Date :slight_smile: Pense neste objeto como o objeto que contém as informações. Para exibí-lo, você deve sempre tansformar em String. Mesmo quando você dá um System.out.println(dateObject) o sistema implicitamente está chamando o método toString().

Talvez seja interessante você explicar o que está tentando fazer com este objeto para vermos qual a solução que se adequa ao seu caso.

Abraços!

Entendi…

É q eu preciso salvar data e hora no banco de dados (Java Derby DATE e TIME), então eu queria “formatar” no padrão “hh:mm:ss”… Mas pelo q entendi só consigo formatar em String, né?

adriano.silva,

Da mesma forma que o objeto Date, o banco não faz formatação de data/hora, apenas guarda os dados. A formatação é feita da hora de exibir tais dados.

O que eu suspeito que você quer é gravar um horário com informação de segundos, seria isso? Se for possível mostre o código da sua inserção no banco de dados, assim talvez possamos ajudar.

Abraços,