Caro Lu�s,

Eu j� tive esse problema uma vez, foi um p� at� descobrir o que era. Sete o TimeZone 
do teu objeto Calendar explicitamente, n�o deixe no TimeZone default, porque da� 
acontece coisas do tipo que voc� teve a� embaixo: voc� l� a data, o Calendar cont�m a 
data certa em um fuso hor�rio, mas na hora de dar um System.out.println(), sai em 
outro fuso hor�rio.

Outra coisa, olhando na documenta��o agora, acabei de notar que o m�todo 
java.util.Date.toLocaleString() est� deprecated. Use um java.text.DateFormat, que j� 
utiliza TimeZone.

Infelizmente eu n�o tenho o c�digo fonte aqui comigo para te mandar, foi no outro 
emprego em que eu estava. Vou tentar refazer agora, mas posso cometer algum engano.

// PEDA�O 1
//
// For�a a setagem do TimeZone default da JVM 
// no in�cio do programa (applet ou application)
//

TimeZone tz_def = TimeZone.getTimeZone( "GMT-03:00" );
TimeZone.setDefault( tz_def );

......................................................
Depois, toda vez que se cria um objeto Calendar ou um DateFormat, force a setagem do 
TimeZone para o TimeZone default do sistema. Voc� vai dizer: "p�, mas se � o default 
do sistema, n�o � esse que ele usa quando eu n�o falo nada?". Eu acho que deveria, mas 
dependendo da JVM onde voc� roda, isso nem sempre � verdade. No meu caso, o programa 
que eu fiz rodava tanto como applet ou application (n�o era muito complexo n�o), e 
isso que eu t� dizendo foi testado nas JVMs: Explorer 4, Explorer 5, Netscape 4.?? 
Win, Netscape 4.?? Linux, JDK Sun p/ Linux, JDK Sun p/ Windows. Cara, antes do truque 
do TimeZone, em cada um sai uma coisa completamente diferente do que sai no outro.

EX.1
...
Calendar c = Calendar.getInstance();
c.setTimeZone( TimeZone.getDefault() ); // <---- AQUI!! O getDefault vai retornar
                                        //              o TimeZone que voc� setou no
                                        //              in�cio.
...

EX.2
...
DateFormat df = DateFormat.getDateInstance();
df.setTimeZone( TimeZone.getDefault() );   // For�a a setagem
...



> -----Original Message-----
> From: Lu�s Fernando Chaim [mailto:[EMAIL PROTECTED]]
> Sent: Ter�a-feira, 24 de Outubro de 2000 16:45
> To: [EMAIL PROTECTED]
> Subject: [java-list] Problemas com Data
> 
> 
> Ol� a todos,
> 
> estou com um problema em cria��o de uma data para grava��o em banco de
> dados.
> 
> O c�digo usado �  o seguinte:
> 
> import java.util.*;
> import java.text.*;
> import java.rmi.RemoteException;
> 
> public
> class Principal{
> 
>     public static void main(String[] args)
>         throws RemoteException{
> 
>         Calendar calendar = null;
>         Date date = null;
>         try{
>             date = DateFormat.getDateInstance(3).parse("01/10/2000");
>             calendar = Calendar.getInstance();
>             calendar.setTime(date);
>         }
>         catch(ParseException parseexception){}
> 
>         java.sql.Date sqlDate = new java.sql.Date(
> calendar.getTime().getTime() );
>         System.out.println("Data: "+ sqlDate.toLocaleString() );
>         System.out.println("---- Fim ----");
>     }
> }
> 
> No System.out.println("Data: "+ sqlDate.toLocaleString() ), o resultado
> esperado � o seguinte:
> 
>     Data: 01/10/2000 00:00:00
> 
> mas est� retornando o seguinte:
> 
>     Data: 30/09/2000 23:00:00
> 
> Algu�m pode me ajudar ?
> 
> T++
> 
> Lu�s Fernando
> Analista de Sistemas
> 
> 
> ------------------------------ LISTA SOUJAVA ---------------------------- 
> http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
> d�vidas mais comuns: http://www.soujava.org.br/faq.htm
> regras da lista: http://www.soujava.org.br/regras.htm
> para sair da lista: envie email para [EMAIL PROTECTED] 
> -------------------------------------------------------------------------
> 

Responder a