Duvida sobre utilização de datas e horas

tenho o seguinte código

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class FormatData
{

public static void main(String[] args) 
{
	try
	{
		Calendar c = Calendar.getInstance();
		String estilo = "dd/MM/yyyy hh:mm:ss";
		DateFormat dt = null; 			
		dt = new SimpleDateFormat(estilo); 
		System.out.println(dt.format(c.getTime()));
		System.in.read();
		System.out.println(dt.format(c.getTime()));
	}
	catch (Exception e) 
	{
		// TODO: handle exception
	}

}

}

ele basicamente pega a data e horário atual e imprime na tela, entretanto no segundo print ele imprime sempre a mesma hora. O problema e o seguinte tenho que montar um arquivo de log onde ele vai imprimir a data e horário das ações que estão ocorrendo. Da forma como esta ele sempre esta imprimindo o mesmo horário.

Aqui tá funcionando normal…
Tente mudar a hora localmente e testa.

Abraços,

Aqui parece ok. Mas para log talvez vc possa usar o Log4J que inclusive permite inserir a hora em cada log.

o código ate que funciona, no teste que eu fiz aki deu o seguinte

01/12/2008 11:45:50

01/12/2008 11:45:50

mesmo esperando uns 15 segundo ou 15 minutos no segundo print e sempre igual ao primeiro.

Amigo o codigo esta normal, mais concordo com o Fausto pq nao usa um log pronto como o Log4J ?

Renan e uma alteração simples no código(não será alterada nenhuma regra), tipo tenho que gerar um arquivo no seguinte formato.

01/12/2008 11:45:50 iniciando tratamento do arquivo

01/12/2008 11:45:52 Lendo header do arquivo

01/12/2008 11:46:03 finalizando tratamento do arquivo

e para subida de uma nova biblioteca em produção e uma burocracia danada!!!

Haha :lol: Agora entendi!

Seguinte, vc pega a data e depois printa ela duas vezes, a MESMA data! Por isso sai igual! Sempre que vc quiser a hora atual do sistema precisa criar um objeto novo. Teste este código e veja como funciona:


package com.teste.outros;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class FormatData {

	public static void main(String[] args) {
		try {
			Calendar c = Calendar.getInstance();
			String estilo = "dd/MM/yyyy hh:mm:ss";
			DateFormat dt = null;
			dt = new SimpleDateFormat(estilo);
			System.out.println(dt.format(new Date()));
			System.in.read();
			System.out.println(dt.format(new Date()));
		} catch (Exception e) {
			// TODO: handle exception
		}

	}

}

bingo grande Fausto!!!

Era exatamente isto ai!!!