tl; डॉ
Instant.ofEpochSecond( 1_280_512_800L )
2010-07-30T18: 00: 00Z
java.time
जावा में बनाया गया नया जावा.टाइम फ्रेमवर्क और बाद में जोडा-टाइम का उत्तराधिकारी है।
इन नई कक्षाओं में युगों से पूरे सेकंड की गिनती को बदलने के लिए एक आसान कारखाना विधि शामिल है । आपको Instant
एक समय मिलता है , यूटीसी में समयरेखा पर नैनोसेकंड संकल्प के साथ।
Instant instant = Instant.ofEpochSecond( 1_280_512_800L );
तत्काल .toString (): 2010-07-30T18: 00: 00Z
उस कोड को IdeOne.com पर लाइव देखें ।

Asia/Kabul
या Asia/Tehran
समय क्षेत्र?
आपने यहां देखे गए 18:00 के बजाय 22:30 का समय मान प्राप्त करने की सूचना दी। मुझे संदेह है कि आपकी PHP उपयोगिता संक्षेप में UTC से समायोजित करने के लिए डिफ़ॉल्ट समय क्षेत्र लागू कर रही है। यहाँ मेरा मूल्य UTC है, Z
(संक्षेप में Zulu
, UTC का अर्थ है) द्वारा हस्ताक्षरित है । किसी भी मौका आपके मशीन ओएस या PHP के लिए Asia/Kabul
या Asia/Tehran
समय क्षेत्र निर्धारित है ? मुझे लगता है कि जैसा कि आप IRST
अपने आउटपुट में रिपोर्ट करते हैं जिसका स्पष्ट रूप से ईरान समय है। वर्तमान में 2017 में गर्मियों के समय के साथ संचालित होने वाले एकमात्र क्षेत्र हैं जो UTC से साढ़े चार घंटे आगे हैं।
के रूप में , या , के प्रारूप में एक उचित समय क्षेत्र नाम निर्दिष्ट करें । 3-4 पत्र संक्षिप्त नाम का उपयोग कभी नहीं इस तरह के रूप या या वे कर रहे हैं के रूप में नहीं सच समय क्षेत्र, नहीं मानकीकृत, और यहां तक कि अद्वितीय नहीं (!)।continent/region
America/Montreal
Africa/Casablanca
Pacific/Auckland
EST
IST
IRST
यदि आप किसी विशेष क्षेत्र के समय क्षेत्र के लेंस के माध्यम से अपना क्षण देखना चाहते हैं, तो ए ZoneId
पाने के लिए आवेदन करें ZonedDateTime
। अभी भी एक साथ एक ही पल, लेकिन एक अलग दीवार-घड़ी के समय के रूप में देखा जाता है ।
ZoneId z = ZoneId.of( "Asia/Tehran" ) ;
ZonedDateTime zdt = instant.atZone( z ); // Same moment, same point on timeline, but seen as different wall-clock time.
2010-07-30T22: 30 + 04: 30 [एशिया / तेहरान]
Java.time से विरासत कक्षाओं में परिवर्तित
आपको नए जावा.टाइम कक्षाओं के साथ रहना चाहिए। लेकिन आवश्यकता पड़ने पर आप पुराने में बदल सकते हैं।
java.util.Date date = java.util.Date.from( instant );
Joda समय
अद्यतन: जोडा-टाइम परियोजना अब रखरखाव मोड में है , जिसमें टीम java.time कक्षाओं में प्रवास की सलाह दे रही है ।
FYI करें, एक Joda-Time DateTime के लिए निर्माणकर्ता समान है: एक long
(नहीं int
!) का उत्पादन करने के लिए एक हजार से गुणा करें ।
DateTime dateTime = new DateTime( ( 1_280_512_800L * 1000_L ), DateTimeZone.forID( "Europe/Paris" ) );
कुख्यात परेशान java.util.Date और। कैलेन्डर कक्षाओं से बचने के लिए सर्वश्रेष्ठ। लेकिन अगर आपको एक तारीख का उपयोग करना चाहिए, तो आप Joda-Time से परिवर्तित कर सकते हैं।
java.util.Date date = dateTime.toDate();
जावा के बारे में
Java.time ढांचे जावा 8 और बाद में बनाया गया है। इन कक्षाओं परेशानी वर्ष प्रतिस्थापित विरासत जैसे तिथि-समय कक्षाएं java.util.Date
, Calendar
, और SimpleDateFormat
।
अब जोडा-टाइम परियोजना, रखरखाव मोड में , java.time कक्षाओं में प्रवासन की सलाह देती है ।
अधिक जानने के लिए, Oracle ट्यूटोरियल देखें । और कई उदाहरणों और स्पष्टीकरणों के लिए ढेर अतिप्रवाह खोजें। विशिष्टता JSR 310 है ।
आप अपने डेटाबेस से सीधे java.time वस्तुओं का आदान-प्रदान कर सकते हैं । JDBC 4.2 या उसके बाद के JDBC ड्राइवर का अनुपालन करें । तार की कोई जरूरत नहीं, कक्षाओं की कोई जरूरत नहीं ।java.sql.*
Java.time कक्षाएं कहाँ से प्राप्त करें?
ThreeTen-अतिरिक्त परियोजना अतिरिक्त कक्षाओं के साथ java.time फैली हुई है। यह परियोजना java.time के लिए भविष्य के संभावित अतिरिक्त के लिए एक साबित जमीन है। आप यहाँ कुछ उपयोगी वर्गों जैसे मिल सकता है Interval
, YearWeek
, YearQuarter
, और अधिक ।