30 Mayıs 2011 Pazartesi

Apache Commons Lang Kütüphanesi-3: lang.time.* Paketi

Lang kütüphanesini incelemeye org.apache.commons.lang.time paketi ile devam ediyoruz.

Bu pakette bulunan sınıflar, zaman değerleriyle ilgili işlemler yapmak için daha pratik yöntemler sunar:

import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang.time.DateUtils;
import org.apache.commons.lang.time.StopWatch;

import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;

public class TimeTrial {
    public static void main(String[] args) {
        //Tarihi dd-MM-yyyy biçiminde göster
        System.out.println("1) dd-MM-yyyy >>>" +
            DateFormatUtils.format(new Date(), "dd-MM-yyyy"));

        //Tarihi SMTP_DATETIME_FORMAT biçiminde göster 
        System.out.println("2) SMTP_DATETIME_FORMAT >>>" +
            DateFormatUtils.SMTP_DATETIME_FORMAT.format(new Date()));

        //Tarihi ISO_DATE_FORMAT biçiminde göster 
        System.out.println("3) ISO_DATE_FORMAT >>>" +
            DateFormatUtils.ISO_DATE_FORMAT.format(new Date()));

        //Girilen milisaniye değerini tarih olarak göster
        System.out.println("4) MMM dd yy HH:mm >>>" +
            DateFormatUtils.format(System.currentTimeMillis(), "MMM dd yy HH:mm"));

        //Girilen milisaniye değerini UTC biçiminde tarih olarak göster
        System.out.println("5) MM/dd/yy HH:mm >>>" +
            DateFormatUtils.formatUTC(System.currentTimeMillis(),
                "MM/dd/yy HH:mm"));

        StopWatch stWatch = new StopWatch();

        //StopWatch'ı başlat
        stWatch.start();

        //Pazartesi'den başlamak üzere haftanın tüm günleri için iterator nesnesi al.
        Iterator itr = DateUtils.iterator(new Date(),
                DateUtils.RANGE_WEEK_MONDAY);

        while (itr.hasNext()) {
            Calendar gCal = (Calendar) itr.next();
            System.out.println(gCal.getTime());
        }

        //StopWatch'ı sonlandır
        stWatch.stop();
        System.out.println("Time Taken >>" + stWatch.getTime());
    }
}

Çıktısı:
1) dd-MM-yyyy >>>09-12-2003
2) SMTP_DATETIME_FORMAT >>>Tue, 09 Dec 2003 00:34:47 +0530
3) ISO_DATE_FORMAT >>>2003-12-09
4) MMM dd yy HH:mm >>>Dec 09 03 00:34
5) MM/dd/yy HH:mm >>>12/08/03 19:04
Mon Dec 08 00:00:00 GMT+05:30 2003
Tue Dec 09 00:00:00 GMT+05:30 2003
Wed Dec 10 00:00:00 GMT+05:30 2003
Thu Dec 11 00:00:00 GMT+05:30 2003
Fri Dec 12 00:00:00 GMT+05:30 2003
Sat Dec 13 00:00:00 GMT+05:30 2003
Sun Dec 14 00:00:00 GMT+05:30 2003
Time Taken >>31

Bu örneklerde tarih bilgisini biçimlendirmeye örnek vermek için SMTP_DATE_FORMAT ve ISO_DATE_FORMAT biçimleri kullanılmıştır. Bu ikisi dışında DateFormatUtils sınıfında 7 ayrı biçim daha vardır. Hiçbiri işinize yaramazsa kendi biçimlendirmenizi de tanımlayabilirsiniz.

StopWatch sınıfı da bir çeşit kronometre uygulamasıdır.

Kolay Gelsin.

1 yorum:

  1. çok alakasız bir sayfadan buraya yönlendim lang kütüphanesini görünce okumadan geçemedim gayet başarılı ve faydalı içerik olmuş bunun için teşekkür etmek istedim.

    YanıtlaSil