Prezado Alex,
 
       Pra solucionar este problema, use o script a seguir (créditos ao Benício Silva Gontijo da UFMG). Este script configura o horário de verão para iniciar no primeiro domingo de Novembro e terminar no último domingo de fevereiro.
 
import java.util.*

public class TesteHorarioVerao
{
  public static void main(String[] args){
     // Cria uma TIME ZONE correspondente ao horário de Brasília
     SimpleTimeZone pdt = new
           SimpleTimeZone(-3 * 60 * 60 * 1000,"GMT-3:00");

     // Seta as regras para o horário de verão Brasileiro
     // Começando no primeiro domingo após o dia primeiro
     pdt.setStartRule(Calendar.NOVEMBER, 1, Calendar.SUNDAY,0);

     // Terminando no último domingo do mês de Fevereiro
     pdt.setEndRule(Calendar.FEBRUARY, -1, Calendar.SUNDAY,0);

     // Instanciando um GregorianCalendar com com a time zone de BSB
     // e levando em consideração as regras do horário de verão.
     Calendar dataHoje = new GregorianCalendar(pdt);

     System.out.println(dataHoje.get(Calendar.HOUR_OF_DAY) + ":" + dataHoje.get(Calendar.MINUTE) + ":" + dataHoje.get(Calendar.SECOND));
  }
}
 
[]s à comunidade !!
----- Original Message -----
From: MarcoJava
Sent: Tuesday, October 22, 2002 9:36 AM
Subject: Re: [java-list] Data

Alex
 
Voce pode utilizar o comando abaixo para setar o time zone na linha de comando:
 
Para GMT-3 (antes e depois do horário de verão)
java -Duser.timezone=GMT-3   weblogic.Server
 
Para GMT-2 (durante o horário de verão)
java -Duser.timezone=GMT-2  weblogic.Server
 
[]´s
Marco Zerbini

 

----- Original Message -----
From: Alex Gauna
Sent: Friday, October 18, 2002 5:35 PM
Subject: [java-list] Data

Pessoal,
 
estou com o seguinte problema com a data a partir do dia 13/10/2002.
a data passa para GMT -02:00, alem do dia 13 voltar para 12, gostaria de saber como fazer para isso nao acontecer
Segue o codigo abaixo como exemplo:
 
 
Obrigado,
 
Alex
 
 
 
            Locale locale = new Locale("pt","BR");
 
            java.util.Date date = DateFormat.getDateInstance( DateFormat.SHORT, locale ).parse( "11/10/2002" );
            Calendar calendar = Calendar.getInstance( locale );
            calendar.setTime( date );
System.out.println(calendar.getTime());   // Fri Oct 11 00:00:00 GMT-03:00 2002
 
            date = DateFormat.getDateInstance( DateFormat.SHORT, locale ).parse( "12/10/2002" );
            calendar.setTime( date );
System.out.println(calendar.getTime());  // Sat Oct 12 00:00:00 GMT-03:00 2002

            date = DateFormat.getDateInstance( DateFormat.SHORT, locale ).parse( "13/10/2002" );
            calendar.setTime( date );
System.out.println(calendar.getTime());  // Sat Oct 12 23:00:00 GMT-03:00 2002
 
            date = DateFormat.getDateInstance( DateFormat.SHORT, locale ).parse( "14/10/2002" );
            calendar.setTime( date );
System.out.println(calendar.getTime());  // Mon Oct 14 00:00:00 GMT-02:00 2002
 
 
 

Responder a