1. DateTimeFormatter வகுப்பு

சிறப்பு DateTimeFormatterவகுப்பு, தேதி நேர API க்குள் நுழைகிறது. புரோகிராமர்கள் ஒரு தேதியையும் நேரத்தையும் அவர்கள் விரும்பும் சரியான வடிவத்திற்கு மாற்றுவதை முடிந்தவரை எளிதாக்குவதே இதன் நோக்கம். மேலும் ஜாவாவின் படைப்பாளிகள் வெற்றி பெற்றதை மகிழ்ச்சியுடன் தெரிவிக்கிறோம்.

அதைப் பயன்படுத்துவது மிகவும் எளிதானது. முதலில், நீங்கள் ஒரு வகுப்பை உருவாக்கி DateTimeFormatter, அது தேதி மற்றும் நேரத்தை எவ்வாறு காண்பிக்கும் என்பதைக் குறிப்பிடும் வடிவத்தில் தேர்ச்சி பெற வேண்டும்:

DateTimeFormatter dtf = DateTimeFormatter.ofPattern(pattern);

dtfஒரு மாறி எங்கே DateTimeFormatter. வகுப்பின் நிலையான முறை . மற்றும் பேட்டர்ன் என்பது தேதி மற்றும் நேரத்தைக் காட்டப் பயன்படுத்தப்படும் பேட்டர்னைக் குறிப்பிடும் சரம்.DateTimeFormatter.ofPattern()DateTimeFormatter

எடுத்துக்காட்டுகள்

குறியீடு கன்சோல் வெளியீடு
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MM-dd-yy");
String text = dtf.format( LocalDateTime.now() );
System.out.println(text);


02-22-19

மேலே உள்ள எடுத்துக்காட்டில், வடிவத்தின் அடிப்படையில் ofPattern()ஒரு பொருளை உருவாக்குவதற்கான முறையைப் பயன்படுத்துகிறோம். DateTimeFormatterஅடுத்த வரியில், ஒரு பொருளை சரமாக format()மாற்றும் முறையைப் பயன்படுத்துகிறோம். LocalDateTimeநீங்கள் திரையில் முடிவைப் பார்க்கிறீர்கள்.

நீங்கள் தேதி நேர API இலிருந்து எந்த பொருளையும் முறைக்கு அனுப்பலாம் format().

நிலையானது ofPattern()மிகவும் எளிமையானது: இது ஒரு வடிவத்தை ஒரு வாதமாக எடுத்து ஒரு DateTimeFormatterபொருளைத் தருகிறது. மிகவும் சுவாரஸ்யமான பகுதி வடிவத்தில் காணப்படுகிறது.


2. வடிவமைப்பு முறை

ஒரு மாதிரியாக அனுப்பப்பட்ட சரம் தகவலைக் காண்பிக்கும் போது ஒரு மாதிரியாகப் பயன்படுத்தப்படுகிறது. MM என்பது மாதத்தின் எண்ணாலும், dd மாதத்தின் நாளாலும், yy என்பது ஆண்டின் எண்ணாலும் மாற்றப்படுகிறது. கடிதங்களின் வழக்கு முக்கியமானது.

இந்த நேர முறைகளுக்கான முழு அட்டவணை இது:

கடிதம் பொருள்
ஒய் ஆண்டு
எம் மாதம்
நாள்
எச் மணிநேரம்
மீ நிமிடங்கள்
கள் நொடிகள்
எஸ் ஒரு வினாடியின் ஆயிரத்தில் ஒரு பங்கு
n நானோ வினாடிகள்.

நினைவில் கொள்வது குறிப்பாக கடினம் அல்ல.

ஆனால் எடுத்துக்காட்டில் உள்ள வடிவத்தில் ஏன் MM, dd மற்றும் yy என்ற தொடர்ச்சியான எழுத்துக்கள் உள்ளன? சரி, இங்குதான் இது மிகவும் சுவாரஸ்யமானது.

பொதுவான சிந்தனை

எழுத்துக்களின் எண்ணிக்கை உரையின் நீளத்தை பாதிக்கிறது. அதிக எழுத்துக்கள் இருந்தால், உரை நீளமாக இருக்கும்.

H என்ற எழுத்து ஒருமுறை குறிப்பிடப்பட்டால், 9 மணிநேரம் 9 ஆகக் காட்டப்படும், ஆனால் H என்ற எழுத்து தொடர்ச்சியாக இரண்டு முறை குறிப்பிடப்பட்டால், 9 மணிநேரம் 09 ஆகக் காட்டப்படும்.

y என்ற எழுத்து தொடர்ச்சியாக 2 முறை குறிப்பிடப்பட்டால், ஆண்டு 2 இலக்கங்களைப் பயன்படுத்தி எழுதப்படும். இது ஒரு வரிசையில் 4 முறை ஏற்பட்டால், 4 இலக்கங்கள் பயன்படுத்தப்படுகின்றன.

M என்ற எழுத்து ஒரு வரிசையில் 2 முறை குறிப்பிடப்பட்டால், மாதத்தின் எண் எழுதப்படும். ஒரு வரிசையில் 3 முறை இருந்தால், மாதத்தின் பெயர் (அதன் முதல் 3 எழுத்துக்கள்) பயன்படுத்தப்படும். ஒரு வரிசையில் 4 முறை இருந்தால், மாதத்தின் முழுப் பெயர் பயன்படுத்தப்படும்.

உதாரணமாக:

குறியீடு கன்சோல் வெளியீடு
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMMM-dd-yyyy");
String text = dtf.format( LocalDateTime.now() );
System.out.println(text);


February-22-2019


3. வடிவங்களின் முழுமையான அட்டவணை

முழு அட்டவணை மிகவும் பெரியது மற்றும் மிகவும் சுவாரஸ்யமானது:

முறை வடிவத்தின் மாறுபாடுகள் உதாரணமாக விளக்கம்
ஒய் yy, yyyy 19; 2019 ஆண்டு
எம்/எல் M, MM, MMM, MMMM, MMMMM 1; 01; ஜன; ஜனவரி; ஜே மாதம்
d, dd 9; 09 நாள்
எச் எச், எச் 2; 02 மணிநேரம்
மீ மீ, மிமீ 3; 03 நிமிடங்கள்
கள் s, ss 5; 05 நொடிகள்
எஸ் எஸ், எஸ்எஸ், எஸ்எஸ்எஸ், ... 1; 12; 123 ஒரு வினாடியின் ஆயிரத்தில் ஒரு பங்கு
n n 123456789 நானோ வினாடிகள்
ஜி G, GGGG, GGGGG கி.பி. அன்னோ டொமினி; ஏ; சகாப்தம்
கே/கே q, qq, qqq, qqqq 3; 03; Q3; 3வது காலாண்டு காலாண்டு
டபிள்யூ டபிள்யூ 13 ஆண்டின் வாரம்
டபிள்யூ டபிள்யூ 3 மாதத்தின் வாரம்
EEE, EEEE, EEEEE திங்கள்; திங்கட்கிழமை; எம் வாரம் ஒரு நாள்
இ/சி ஈ, ஈ, ஈஈ, ஈஈஈ, ஈஈஈஈ 1; 01; திங்கள்; திங்கட்கிழமை; எம் வாரம் ஒரு நாள்
மாலை முற்பகல் அல்லது பிற்பகல்
12 12 மணி நேர கடிகாரம்.
வி வி வி ஐரோப்பா/ஹெல்சின்கி நேரம் மண்டலம்
z z zzzz EET; கிழக்கு ஐரோப்பிய நிலையான நேரம் நேரம் மண்டலம்
ஓ ஓஓஓ GMT+2; GMT+02:00 நேரம் மண்டலம்

சொல்லப்போனால், இது உண்மையில் முழுமையான பதிப்பு அல்ல. நீங்கள் மிகவும் முழுமையான பதிப்பை இங்கே காணலாம் .



4. பாகுபடுத்தும் நேரம்

DateTimeFormatterகொடுக்கப்பட்ட வடிவத்தின்படி ஒரு தேதியையும் நேரத்தையும் ஒரு சரமாக மாற்றுவது மட்டுமல்லாமல், தலைகீழ் செயல்பாட்டைச் செய்வதற்கான திறனுக்காகவும் வகுப்பு சுவாரஸ்யமானது !

ஒரு சரத்தை பாகுபடுத்துவது என்பது அதை அர்த்தமுள்ள டோக்கன்களாக பிரிக்கும் செயல்முறையாகும்.

அது எப்படி இருக்கிறது என்பது இங்கே:

குறியீடு கன்சோல் வெளியீடு
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MMMM-dd-yyyy");
LocalDate date = LocalDate.parse("February-23-2019", dtf);
System.out.println(date);


February-23-2019

முதலில், நாம் ஒரு DateTimeFormatterபொருளை உருவாக்கி, பாகுபடுத்துவதற்குப் பயன்படுத்தப்படும் வடிவத்தை அமைக்கிறோம்.

பின்னர் நாம் LocalDate.parse()அல்லது LocalTime.parse()அல்லது LocalDateTime.parse()முறையை அழைக்கிறோம் மற்றும் பொருளுடன் பாகுபடுத்தப்பட வேண்டிய சரத்தில் அனுப்புகிறோம் DateTimeFormatter, இது அனுப்பப்பட்ட உரையை எவ்வாறு அலசுவது மற்றும் அதைச் செய்ய என்ன மாதிரியைப் பயன்படுத்த வேண்டும் என்பதைப் புரிந்துகொள்கிறது.

மற்றொரு உதாரணம்: இந்த முறை நேரத்தை அலசுவோம்.

குறியீடு கன்சோல் வெளியீடு
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalTime time = LocalTime.parse("23:59:59", dtf);
System.out.println(time);


23:59:59