İçerikler :

Calendar Calendar İçin Add Kullanımı Calendar İçin Bazı Bilgileri Ekrana Basan Örn.. Calendar İçin Set Kullanımı Date DateFormat DateFormat Varsayılan Biçimlendirme Tiplerini.. Leniency SimpleDateFormat SimpleDateFormat ile Tarih Biçimlendiren Basi.. SimpleDateFormat Sınıfı İçin Tarih Formatlama..

Bu Sayfayı Paylaş:

Kavram

Date

Tanım: Java util paketinde bulunan, zamandaki bir anı milisaniye cinsinden tutan sınıf. Örneğin Date now=new Date() şeklinde şimdiki zamanı , Date d=new Date(1919,4,19) ile istenilen bir zamanı alabilirsiniz.

Kavram

Calendar

Tanım: Java util paketinde bulunan, zamandaki bir anı milisaniye cinsinden tutan sınıf. Milisaniye değeri 1 Ocak 1970'den itibaren olan milisaniye değeridir. Calendar now=Calendar.getInstance() ile şimdiki zaman alınabilir.

Örnek

Calendar İçin Bazı Bilgileri Ekrana Basan Örnek

Şimdiki zamanı yaratan ve ekrana basan örnek aşağıdaki gibidir :
import java.util.*;
import java.text.*;
public class CalendarTest {
    public static void main(String[] args){
        Calendar c=Calendar.getInstance();
        System.out.println(c);        
        System.out.println(c.get(Calendar.YEAR));
        System.out.println(c.get(Calendar.MONTH));
        System.out.println(c.get(Calendar.DAY_OF_MONTH)); 
        System.out.println(c.get(Calendar.DAY_OF_WEEK));
        System.out.println(c.get(Calendar.DAY_OF_YEAR)); 
        DateFormat df=DateFormat.getDateInstance(DateFormat.LONG);
        System.out.println(df.format(new Date()));
    }
}
Ekran çıktısı aşağıdaki gibi olabilir: java.util.GregorianCalendar[time=1124716172190, areFieldsSet=true,areAllFieldsSet=true,lenient=true, zone=sun.util.calendar.ZoneInfo[id="Europe/Athens", offset=7200000,dstSavings=3600000,useDaylight=true, transitions=138,lastRule=java.util.SimpleTimeZone[id=Europe/Athens,offset=7200000, dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1, startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9, endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2, minimalDaysInFirstWeek=1,ERA=1,YEAR=2005,MONTH=7,WEEK_OF_YEAR=35, WEEK_OF_MONTH=4,DAY_OF_MONTH=22,DAY_OF_YEAR=234,DAY_OF_WEEK=2, DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=4,HOUR_OF_DAY=16,MINUTE=9, SECOND=32,MILLISECOND=190,ZONE_OFFSET=7200000,DST_OFFSET=3600000] 2005 7 22 2 234 22 Ağustos 2005 Pazartesi Calendar c=Calendar.getInstance(); sistemin tarihine uygun bir nesne yaratıp döndürmektedir. Calendar'da get method ile istenilen bir tipe göre değerler alınabilir. Örneğin Calendar.YEAR verilince yıl bilgisi gelmektedir. Kaçıncı ay, ayın kaçıncı günü, haftanın kaçıncı günü gibi bilgileri alabiliriz. En son formatlama işlemi gerçekleşmektedir. DateFormat sınıfı java.text paketindedir ve tarihi formatlamak için kullanılır.

Kavram

Leniency

Tanım: Calendar'da verilen değerlerin kontrolünün yapılıp yapılmayacağını belirleyen özellik. Leniency true verilirse, örneğin 30 çeken bir ay için 31 verilirse gün bir sonraki ayın ilk günü yapılır. Bu durumda eğer Leniency false verilseydi hata oluşurdu.

Veri

Calendar İçin Set Kullanımı

Calendar nesnesi yarattığınızda varsayılan olarak şimdiki tarihi almaktadır. Tarih değerlerini set ile güncelleyebilirsiniz. Örneğin aşağıda tarih değiştirilmektedir:
package com.test.datetime;

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class CalendarSet {

	public static void main(String[] args) {
		
		Calendar cal=Calendar.getInstance();
		cal.set(Calendar.YEAR, 1919);
		cal.set(Calendar.MONTH, Calendar.MAY);
		cal.set(Calendar.DAY_OF_MONTH, 19);
		
		SimpleDateFormat sdf=new SimpleDateFormat("dd.MM.yyyy");
		
		System.out.println(sdf.format(cal.getTime()));
		
	}
	
}
Yukarıdaki uygulama çalıştırıldığında aşağıdaki bilgi basılacaktır: 19.05.1919 SimpleDateFormat tarih formatlamak için kullanılan bir sınıftır.

Veri

Calendar İçin Add Kullanımı

Calendar nesnesi yarattığınızda varsayılan olarak şimdiki tarihi almaktadır. Tarih değerlerini add ile ekleme yapabilirsiniz. Örneğin aşağıda şimdiki tarih önce ekrana bastırılmakta, son şimdiki tarihe bir yıl, bir ay ve bir gün eklenmektedir:
package com.test.datetime;

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class CalendarAdd {

	public static void main(String[] args) {
		
		SimpleDateFormat sdf=new SimpleDateFormat("dd.MM.yyyy");
		
		Calendar now=Calendar.getInstance();
		
		System.out.println("now:"+ sdf.format(now.getTime()));
		
		Calendar cal=Calendar.getInstance();
		
		cal.add(Calendar.YEAR, 1);
		cal.add(Calendar.MONTH, 1);
		cal.add(Calendar.DAY_OF_YEAR, 1);
		
		System.out.println("cal:"+ sdf.format(cal.getTime()));	
		
	}
	
}

Yukarıdaki uygulama çalıştırıldığında aşağıdaki bilgi basılacaktır: now:18.10.2016 cal:19.11.2017 SimpleDateFormat tarih formatlamak için kullanılan bir sınıftır.

Kavram

DateFormat

Tanım: java.text paketinde, tarih değerlerini varsayılan biçimlere göre biçimlendirme ve parse etmek için kullanılan temel abstract sınıf. DateFormat formatter=DateFormat.getDateInstance(DateFormat.FULL) şeklinde uzun tarih formatı için bir sınıf yaratılabilir.

Veri

DateFormat Varsayılan Biçimlendirme Tiplerinin Kullanıldığı Örnek

DateFormat sınıfı ile dört tane biçimlendirme tipi aşağıdaki örnekte kullanılmaktadır:
package com.test.datetime;

import java.text.DateFormat;
import java.util.Calendar;
import java.util.Locale;

public class DateFormatTest {

	public static void main(String[] args) {
		
		DateFormat dfFull=DateFormat.getDateInstance(DateFormat.FULL,new Locale("TR"));
		
		DateFormat dfLong=DateFormat.getDateInstance(DateFormat.LONG,new Locale("TR"));
		
		DateFormat dfMedium=DateFormat.getDateInstance(DateFormat.MEDIUM,new Locale("TR"));

		DateFormat dfShort=DateFormat.getDateInstance(DateFormat.SHORT,new Locale("TR"));

		Calendar now=Calendar.getInstance();
		
		System.out.println("full:"+ dfFull.format(now.getTime()));
		
		System.out.println("long:"+ dfLong.format(now.getTime()));

		System.out.println("medium:"+ dfMedium.format(now.getTime()));

		System.out.println("short:"+ dfShort.format(now.getTime()));

	}
	
}
FULL, LONG, MEDIUM ve SHORT tipi kullanılmıştır. Bölgesel olarak Türkiye verilmiştir ve tarih biçimi Türkiye'de kullanılan biçimde olacaktır. Uygulama çıktısı aşağıdaki gibidir: full:18 Ekim 2016 Salı long:18 Ekim 2016 Salı medium:18.Eki.2016 short:18.10.2016 Türkiye'de long ile full farklı değildir ancak bazı ülkelerde farklıdır

Kavram

SimpleDateFormat

Tanım: java.text paketinde, tarih değerlerini istenildiği şekilde biçimlendirme ve parse etmek için kullanılan temek sınıf. SimpleDateFormat, DateFormat sınıfından türemektedir ve kendinize özel tarih biçimleri yaratılmasını sağlamaktadır. SimpleDateFormat formatter=new SimpleDateFormat("dd.MM.yyyy") şeklinde gün.ay.yıl şeklinde biçimleyecek bir nesne yaratılabilir.

Veri

SimpleDateFormat Sınıfı İçin Tarih Formatlamak İçin Kullanılan Harfler

SimpleDateFormat ile istediğiniz bir tarih biçimini yaratabilirsiniz. Formatlar aşağıdaki gibidir:
HarfAnlamıÖrnek
yYılyyyy : 2016, yy : 16
MAyMM : 07, May, Mayıs
dAyın Günüd: 2 , dd : 02
kGünün Saati (1-24)kk : 13
mDakikamm:05
sSaniyess:12
EHaftanın günüE : Salı
DYılın Kaçıncı GünüD:360
HGünün Saat (0-23)HH:00
KGünün Saati (am/pm şeklinde 0-11)K:0
hGünün Saati (am/pm şeklinde 1-12)hh:12
SmilisaniyeS:234
zTime zone (genel)Pacific Standard Time; PST; GMT-08:00
ZTime zone (RFC 822)-0800
XTime zone (ISO 8601)-08; -0800; -08:00
Bazı örnek tarihler aşağıdaki gibi gösterilebilir:
  • dd.MM.yyyy : 18.10.2016
  • dd/MM/yyyy kk:mm:ss : 18/10/2016 12:47:49
  • kk:mm : 12:47

Örnek

SimpleDateFormat ile Tarih Biçimlendiren Basit Bir Örnek

Aşağıda üç farklı formatta tarih biçimlendirerek ekrana basılmaktadır:
package com.test.datetime;

import java.text.SimpleDateFormat;
import java.util.Date;

public class SimpleDateFormatTest {

	public static void main(String[] args) {
		
		SimpleDateFormat gunayyil=new SimpleDateFormat("dd.MM.yyyy");
		
		SimpleDateFormat gunayyilsaatdakikasaniye=new SimpleDateFormat("dd/MM/yyyy kk:mm:ss");
		
		SimpleDateFormat saatdakika=new SimpleDateFormat("kk:mm");

		Date now=new Date();
		
		System.out.println(gunayyil.format(now));
		
		System.out.println(gunayyilsaatdakikasaniye.format(now));
		
		System.out.println(saatdakika.format(now));
		
	}
	
}
Uygulamanın çıktısı aşağıdaki gibi olacaktır: 18.10.2016 18/10/2016 12:47:49 12:47



Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir