Java.util.date से JodaTime में परिवर्तित करें


249

मैं एक परिवर्तित करना चाहते java.util.Dateकरने के लिए JodaTimeइतनी के रूप में तिथियों के बीच subtractions बाहर ले जाने के। वहाँ से परिवर्तित करने के लिए एक अच्छा संक्षिप्त तरीका Dateहै JodaTime?

जवाबों:


478
java.util.Date date = ...
DateTime dateTime = new DateTime(date);

सुनिश्चित करें कि dateनहीं है null, हालांकि, अन्यथा यह काम करता है जैसे new DateTime()मैं - वास्तव में नहीं है कि पसंद करते हैं।


9
तो मूल रूप से:DateTime dateTime = date==null?null:new DateTime(date);
जोएरी हेंड्रिकक्स

121
+1 के लिए "अन्यथा यह नए DateTime () की तरह कार्य करता है - मुझे वास्तव में यह पसंद नहीं है।"
रीव्सवी

1
@ बबजाइडप्रिंस नं; तब आपको नए DateTime (शून्य) के समान मूल्य मिलेगा, जो कि वास्तव में हम बचना चाहते थे। अभिव्यक्ति को अशक्त बनाए रखने के लिए है, जो कि ज्यादातर स्थितियों में समझ में आता है।
जोएरी हेंड्रिकक्स

4
ज्ञात हो कि जावा डेट टाइमजोन इंडिपेंडेंट है जबकि जोडा डेटाइम में क्रोनोलॉजी है।
क्रिस्टियन व्राबी

1
हाँ, एक या दो अगर नए डेटाइम की तरह अशक्त कार्य () मेरे कारण थोड़ी अनहोनी है ...
buzzsawddog

13

http://joda-time.sourceforge.net/quickstart.html

प्रत्येक डेटाइम वर्ग विभिन्न प्रकार के निर्माणकर्ता प्रदान करता है। इनमें ऑब्जेक्ट कंस्ट्रक्टर शामिल हैं। यह आपको निर्माण करने की अनुमति देता है, उदाहरण के लिए, निम्न वस्तुओं से दिनांक समय:

* Date - a JDK instant
* Calendar - a JDK calendar
* String - in ISO8601 format
* Long - in milliseconds
* any Joda-Time datetime class

16
@skaffman यदि आप अशक्त तारीखों से बचना चाहते थे तो आप इसके बजाय date.getTime () का उपयोग कर सकते थे। आपको एक शून्य सूचक अपवाद मिल रहा होगा, जो कि चुपचाप विफल होने से बेहतर हो सकता है।
हीदन

2
मुझे आश्चर्य है कि उन्होंने सिर्फ उन वस्तुओं के लिए अपने निर्माता को अधिभार क्यों नहीं डाला।
पीटर डी ब्यू

1
@PieterDeBie - क्योंकि प्रणाली सामान्य है। आप या से रूपांतरण करने के लिए अपने स्वयं के ऑब्जेक्ट प्रकारों को पंजीकृत कर सकते हैं।
जूल्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.