TL; ড
আধুনিক পদ্ধতির জাভা.টাইম ক্লাস ব্যবহার করা হয় ।
YearMonth.from(
ZonedDateTime.parse(
"Mon Mar 14 16:02:37 GMT 2011" ,
DateTimeFormatter.ofPattern( "E MMM d HH:mm:ss z uuuu" )
)
).toString()
2011-03
উত্তরাধিকারের তারিখ-সময় ক্লাসগুলি এড়িয়ে চলুন
আধুনিক উপায় জাভা.টাইম ক্লাস সহ। পুরানো তারিখ-কালীন ক্লাসগুলি যেমন Calendarখারাপভাবে নকশাকৃত, বিভ্রান্তিকর এবং সমস্যাযুক্ত বলে প্রমাণিত হয়েছে।
আপনার স্ট্রিং ইনপুট মেলে একটি কাস্টম বিন্যাস সংজ্ঞায়িত করুন।
String input = "Mon Mar 14 16:02:37 GMT 2011";
DateTimeFormatter f = DateTimeFormatter.ofPattern( "E MMM d HH:mm:ss z uuuu" );
হিসেবে বিশ্লেষণ ZonedDateTime।
ZonedDateTime zdt = ZonedDateTime.parse( input , f );
আপনি বছর এবং মাস আগ্রহী। জাভা.টাইম ক্লাসগুলি YearMonthসেই উদ্দেশ্যে ক্লাস অন্তর্ভুক্ত করে ।
YearMonth ym = YearMonth.from( zdt );
প্রয়োজনে আপনি বছর এবং মাসের নম্বরগুলির জন্য জিজ্ঞাসাবাদ করতে পারেন।
int year = ym.getYear();
int month = ym.getMonthValue();
তবে toStringপদ্ধতিটি স্ট্যান্ডার্ড আইএসও 8601 ফর্ম্যাটে একটি স্ট্রিং উত্পন্ন করে।
String output = ym.toString();
এই সব একসাথে রাখুন।
String input = "Mon Mar 14 16:02:37 GMT 2011";
DateTimeFormatter f = DateTimeFormatter.ofPattern( "E MMM d HH:mm:ss z uuuu" );
ZonedDateTime zdt = ZonedDateTime.parse( input , f );
YearMonth ym = YearMonth.from( zdt );
int year = ym.getYear();
int month = ym.getMonthValue();
কনসোল করতে ডাম্প।
System.out.println( "input: " + input );
System.out.println( "zdt: " + zdt );
System.out.println( "ym: " + ym );
ইনপুট: সোমবার 14 16:02:37 GMT ২০১১
zdt: 2011-03-14T16: 02: 37Z [GMT]
ym: 2011-03
লাইভ কোড
IdeOne.com এ চলমান এই কোডটি দেখুন ।
রূপান্তর
আপনার যদি অবশ্যই কোনও Calendarঅবজেক্ট থাকে তবে আপনি GregorianCalendarপুরানো ক্লাসগুলিতে যুক্ত নতুন পদ্ধতিতে রূপান্তর করতে পারেন ।
GregorianCalendar gc = GregorianCalendar.from( zdt );
জাভা.টাইম সম্পর্কে
Java.time ফ্রেমওয়ার্ক জাভা 8 এবং পরে পাতাটা করা হয়। এই ক্লাসগুলি , & , এর মতো সমস্যাযুক্ত পুরানো উত্তরাধিকারের তারিখ-সময়ের ক্লাসগুলিকে সহায়তা করে ।java.util.DateCalendarSimpleDateFormat
Joda-টাইম প্রকল্প, এখন রক্ষণাবেক্ষণ মোড , স্থানান্তরণ java.time করার পরামর্শ দেয়।
আরও জানতে, ওরাকল টিউটোরিয়ালটি দেখুন । এবং অনেক উদাহরণ এবং ব্যাখ্যার জন্য স্ট্যাক ওভারফ্লো অনুসন্ধান করুন। স্পেসিফিকেশনটি জেএসআর 310 ।
জাভা.টাইম ক্লাস কোথায় পাবেন?
ThreeTen-অতিরিক্ত প্রকল্প অতিরিক্ত শ্রেণীর সাথে java.time প্রসারিত করে। এই প্রকল্পটি জাভা.টাইমে সম্ভাব্য ভবিষ্যতের সংযোজনগুলির একটি প্রমাণযোগ্য ক্ষেত্র। আপনি এখানে কিছু দরকারী শ্রেণীর যেমন খুঁজে পেতে পারেন Interval, YearWeek, YearQuarter, এবং আরো ।