Java nasıl bir Tarih gece yarısı bugün ve yarın gece yarısı nesne oluşturmak için? | Netgez.com
SORU
27 Temmuz 2011, ÇARŞAMBA


Java nasıl bir Tarih gece yarısı bugün ve yarın gece yarısı nesne oluşturmak için?

Benim kod bugün yaşanan tüm şeyler bulmam lazım. 12:00-00:00 (gece yarısı bu sabah erken saatlerde) bugün (gece yarısı) tarihleri karşılaştırmak lazım.

Biliyorum

Date today = new Date(); 

... beni alır şimdi. Ve ...

Date beginning = new Date(0);

... bana Jan sıfır zaman 1, 1970 alır. Ama zaman zaman sıfır sıfır bugün ve yarın için kolay bir yolu nedir?

Herhangi bir yardım büyük beğeni topluyor!

Ben yaptım ama daha kolay bir yolu var elbette. GÜNCELLEME;?

Calendar calStart = new GregorianCalendar();
calStart.setTime(new Date());
calStart.set(Calendar.HOUR_OF_DAY, 0);
calStart.set(Calendar.MINUTE, 0);
calStart.set(Calendar.SECOND, 0);
calStart.set(Calendar.MILLISECOND, 0);
Date midnightYesterday = calStart.getTime();

Calendar calEnd = new GregorianCalendar();
calEnd.setTime(new Date());
calEnd.set(Calendar.DAY_OF_YEAR, calEnd.get(Calendar.DAY_OF_YEAR) 1);
calEnd.set(Calendar.HOUR_OF_DAY, 0);
calEnd.set(Calendar.MINUTE, 0);
calEnd.set(Calendar.SECOND, 0);
calEnd.set(Calendar.MILLISECOND, 0);
Date midnightTonight = calEnd.getTime();

CEVAP
27 Temmuz 2011, ÇARŞAMBA


java.açıklama.Takvim

// today    
Calendar date = new GregorianCalendar();
// reset hour, minutes, seconds and millis
date.set(Calendar.HOUR_OF_DAY, 0);
date.set(Calendar.MINUTE, 0);
date.set(Calendar.SECOND, 0);
date.set(Calendar.MILLISECOND, 0);

// next day
date.add(Calendar.DAY_OF_MONTH, 1);

8 - java ile İLGİLENİYORUZ.zaman.LocalTime ve java.zaman.LocalDate

    LocalTime midnight = LocalTime.MIDNIGHT;
    LocalDate today = LocalDate.now(ZoneId.of("Europe/Berlin"));
    LocalDateTime todayMidnight = LocalDateTime.of(today, midnight);
    LocalDateTime tomorrowMidnight = todayMidnight.plusDays(1);

Joda-Zaman

Eğer komple cam < kullanıyorsanız; 8, API gerçekten güzel çünkü Joda Time, tavsiye ederim:

DateTime date = new DateTime().toDateMidnight().toDateTime();
DateTime tomorrow = date.plusDays(1);

Joda Zaman sürüm 2.3 beri DateMidnightkaldırılmışyani bunu kullanın:

DateTime today = new DateTime().withTimeAtStartOfDay();
DateTime tomorrow = today.plusDays(1).withTimeAtStartOfDay();

Eğer JVM mevcut varsayılan saat dilimi istemezsin diye bir saat dilimi geçer.

DateTimeZone timeZone = DateTimeZone.forID("America/Montreal");
DateTime today = new DateTime(timeZone).withTimeAtStartOfDay(); // Pass time zone to constructor.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • efaustus9

    efaustus9

    16 HAZİRAN 2006
  • Santozz Yazz

    Santozz Yazz

    23 Mart 2014