Re: [java-list] BUG Java (GregorianCalendar) ?
Ao que parece, 13 de Outubro de 2001 eh odia em que ohorario muda 1 hora. - Original Message - From: Marcio H. Gardezani To: [EMAIL PROTECTED] Sent: Thursday, April 25, 2002 10:24 AM Subject: [java-list] BUG Java (GregorianCalendar) ? Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001
RES: [java-list] BUG Java (GregorianCalendar) ?
Eu nunca usei esse componente, mas os comentários suscitaram a seguinte dúvida. Como se sabe o horário de verão no Brasil não inicia e termina nas datas convencionais. Tem como lidar com isso nesse componente ? -Mensagem original-De: Marcelo Alves [mailto:[EMAIL PROTECTED]]Enviada em: quinta-feira, 25 de abril de 2002 18:17Para: [EMAIL PROTECTED]Assunto: Re: [java-list] BUG Java (GregorianCalendar) ? Oi, Nada de errado, observe que comecou o horário de verão. BRT != BRST. .: marcelo alves :. - Original Message - From: Marcio H. Gardezani To: [EMAIL PROTECTED] Sent: Thursday, April 25, 2002 11:24 AM Subject: [java-list] BUG Java (GregorianCalendar) ? Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001
Re: [java-list] BUG Java (GregorianCalendar) ?
Não está errado, é que dia 14/10 começa o horário de verão, então dia 13/10 as 0hs + 24horas(1 dia) = 13/10 as 23hs (ja foi atrasado uma hora), pode perceber que o dia 14/10 já está como BRST, o S indica o horário de verão. - Original Message - From: Marcio H. Gardezani To: [EMAIL PROTECTED] Sent: Thursday, April 25, 2002 11:24 AM Subject: [java-list] BUG Java (GregorianCalendar) ? Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001
Re: [java-list] BUG Java (GregorianCalendar) ?
Oi, Nada de errado, observe que comecou o horário de verão. BRT != BRST. .: marcelo alves :. - Original Message - From: Marcio H. Gardezani To: [EMAIL PROTECTED] Sent: Thursday, April 25, 2002 11:24 AM Subject: [java-list] BUG Java (GregorianCalendar) ? Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001
Re: [java-list] BUG Java (GregorianCalendar) ?
Talvez isto te atenda... public static void addDaysToDate(Timestamp data, int value) { GregorianCalendar gc = new GregorianCalendar(); gc.setTime(data); gc.add(Calendar.DATE, value); data.setTime(gc.getTime().getTime()); } [],s Antonio Manoel - Original Message - From: Marcio H. Gardezani To: [EMAIL PROTECTED] Sent: Thursday, April 25, 2002 11:24 AM Subject: [java-list] BUG Java (GregorianCalendar) ? Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001
[java-list] BUG Java (GregorianCalendar) ?
Olá, Estive utilizando a classe GregorianCalendar e observei que ao criar uma instancia com a data de 13/10/2001 e adicionar 1 dia a data ficou errada. O mesmo cálculo com datas diferentes funciona. Abaixo está o programa e o resultado apresentado durante a execução. Será que isso eh um bug do java? Alguém sabe o que está acontecendo? Utilizo WIN98 com JDK 1.4.0. Obrigado pela atenção. === Programa (tst.java) === import java.util.GregorianCalendar;import java.util.Calendar; public class tst { public static void main(String args[]) { GregorianCalendar cg; System.out.println("\n- Exemplo 1 (correto):"); cg = new GregorianCalendar(2001,9,12); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 2 (ERRO!):"); cg = new GregorianCalendar(2001,9,13); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); System.out.println("\n- Exemplo 3 (correto):"); cg = new GregorianCalendar(2001,9,14); System.out.println("Hoje..: " + cg.getTime()); cg.add(Calendar.DAY_OF_MONTH, 1); System.out.println("Amanha: " + cg.getTime()); }} === Resultado === - Exemplo 1 (correto):Hoje..: Fri Oct 12 00:00:00 BRT 2001Amanha: Sat Oct 13 00:00:00 BRT 2001 - Exemplo 2 (ERRO!):Hoje..: Sat Oct 13 00:00:00 BRT 2001Amanha: Sat Oct 13 23:00:00 BRT 2001 - Exemplo 3 (correto):Hoje..: Sun Oct 14 01:00:00 BRST 2001Amanha: Mon Oct 15 01:00:00 BRST 2001