Re: Re: problem s java.util.Date

nhac na email.cz nhac na email.cz
Neděle Březen 7 14:03:14 CET 2010


HTML příloha byla odstraněna...
URL: <http://amaio.cz/pipermail/konference/attachments/20100307/aadb49a8/attachment.htm>
------------- další část ---------------
tohle by mělo fungovat všude na světě:

   public static void main(String[] args) throws ParseException {
      SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
      Date date1 = format.parse("00:40:20");
      Date date2 = format.parse("00:30:10");
      Date date3 = new Date(date1.getTime() - date2.getTime() + date
1.getTimezoneOffset()*60000);
      System.out.println(format.format(date3));
   }


------------ Původní zpráva ------------
Od: danisevsky <danisevsky na gmail.com>
Předmět: Re: problem s java.util.Date
Datum: 07.3.2010 13:32:53
---------------------------------------------
diky za vysvetleni. Nevim zda pro moje ucely neni Joda Time 
zbytecne, potrebuji pouze ulozit do db dva casy a jejich rozdil. 
Mimochodem jaka trida by se na to z Joda Time hodila, LocalTime? 
Navic pouzivam hibernate a tam neni s mapovanim java.util.Date zadna
prace.

nastaveni Locale.ROOT, pokud jste to myslel takto:

   public static void main(String[] args) throws ParseException {
      SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss", 
Locale.ROOT);
      Date date1 = format.parse("00:40:20");
      Date date2 = format.parse("00:30:10");
      Date date3 = new Date(date1.getTime() - date2.getTime());
      System.out.println(format.format(date3));
   }

nepomohlo, porad je vystup o hodinu vic.



2010/3/6 Ondra Medek <xmedeko na gmail.com(mailto:xmedeko na gmail.com)>
" Nebo nastavte pro SimpleDateFormat Locale.ROOT.

2010/3/6 Filip Jirsák <filip.jirsak na gmail.com
(mailto:filip.jirsak na gmail.com)>:




> Dobrý večer,
> vzala se tam takto: date3 je 1. ledna 1970 0:10:10 GMT (610 sekund
po
> 1.1.1970 0:00:00 GMT), vy si to necháte vypsat pomocí 
SimpleDateFormat v
> aktuálním časovém pásmu (CET), které je o hodinu posunuté vůči 
GMT, takže
> date3 v něm znamená 1. ledna 1970 1:10:10 CET. Z toho si necháte 
vypsat
> jenom čas (bez časové zóny, což vás mate).
>
> java.util.Date pro takovéto použití není vůbec vhodný. Pokud 
chcete provádět
> takovéto výpočty s časem, použijte třeba knihovnu Joda Time.
>
> S pozdravem
>
> Filip Jirsák
>
>
> Dne 6. března 2010 18:54 danisevsky <danisevsky na gmail.com
(mailto:danisevsky na gmail.com)> napsal(a):
>>
>>  SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
>>       Date date1 = format.parse("00:40:20");
>>       Date date2 = format.parse("00:30:10");
>>       Date date3 = new Date(date1.getTime() - date2.getTime());
>>       System.out.println(format.format(date3));
>





--
Ondra Medek
"



Další informace o konferenci Konference