SORU
16 NİSAN 2010, Cuma


Ne kadar yıl, ay, Gün, Saat, Dakika, Saniye ve milisaniye için Java içinde geçerli anın?

Nasıl Java içinde geçerli dakika, yıl, ay, Gün, Saat, Dakika, Saniye ve milisaniye alabilir miyim? Strings olarak onlara sahip olmak istiyorum.

CEVAP
16 NİSAN 2010, Cuma


Bunun için java.time.LocalDateTime alıcı kullanabilirsiniz.

LocalDateTime now = LocalDateTime.now();
int year = now.getYear();
int month = now.getMonthValue();
int day = now.getDayOfMonth();
int hour = now.getHour();
int minute = now.getMinute();
int second = now.getSecond();
int millis = now.get(ChronoField.MILLI_OF_SECOND); // Note: no direct getter available.

System.out.printf("%d-d-d d:d:d.d", year, month, day, hour, minute, second, millis);

Veya, Java 8 üzerinde değilken henüz, java.util.Calendar.

Calendar now = Calendar.getInstance();
int year = now.get(Calendar.YEAR);
int month = now.get(Calendar.MONTH)   1; // Note: zero based!
int day = now.get(Calendar.DAY_OF_MONTH);
int hour = now.get(Calendar.HOUR_OF_DAY);
int minute = now.get(Calendar.MINUTE);
int second = now.get(Calendar.SECOND);
int millis = now.get(Calendar.MILLISECOND);

System.out.printf("%d-d-d d:d:d.d", year, month, day, hour, minute, second, millis);

Her iki şekilde de, bu şimdi: yazdırır

2010-04-16 15:15:17.816

String, String#valueOf() yapmak int bir dönüştürme.


Eğer niyetiniz varsasonuçtadüzenleyen ve insan dostu bir dize biçiminde görüntülemek için, o zaman daha iyi Java8.java.time.format.DateTimeFormatter (tutorial here), ya kullanın

LocalDateTime now = LocalDateTime.now();
String format1 = now.format(DateTimeFormatter.ISO_DATE_TIME);
String format2 = now.atZone(ZoneId.of("GMT")).format(DateTimeFormatter.RFC_1123_DATE_TIME);
String format3 = now.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss", Locale.ENGLISH));

System.out.println(format1);
System.out.println(format2);
System.out.println(format3);

ya da Java 8 üzerinde değilken henüz, java.text.SimpleDateFormat kullanın:

Date now = new Date(); // java.util.Date, NOT java.sql.Date or java.sql.Timestamp!
String format1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.ENGLISH).format(now);
String format2 = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z", Locale.ENGLISH).format(now);
String format3 = new SimpleDateFormat("yyyyMMddHHmmss", Locale.ENGLISH).format(now);

System.out.println(format1);
System.out.println(format2);
System.out.println(format3);

Her iki şekilde de, bu verir:

2010-04-16T15:15:17.816
Fri, 16 Apr 2010 15:15:17 GMT
20100416151517

Ayrıca Bkz:

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bogdan Gabriel

    Bogdan Gabri

    5 Aralık 2006
  • Chanre Joubert

    Chanre Joube

    27 Temmuz 2012
  • paikimchung

    paikimchung

    12 Mayıs 2006