2012-10-15 10 views
6

संभव डुप्लिकेट Android एप्लिकेशन पर दो तिथियों को खोजने के लिए:
Calculate date/time difference in javaकैसे अंतर

मैं एंड्रॉयड पर एक नया हूँ और मैं मेरे लिए एक नई एप्लिकेशन बनाना चाहते हैं। मैं वर्तमान दिनांक का उपयोग करके दो तिथियों (डीडी/मिमी/yyyy) प्रारूप को घटाना चाहता हूं। उदाहरण के लिए मैं 01/02/2013 और वर्तमान दिनांक के बीच के दिनों के मतभेदों को ढूंढना चाहता हूं। मैं यह कैसे कर सकता हूं?

उत्तर

19
SimpleDateFormat dfDate = new SimpleDateFormat("dd/MM/yyyy"); 
    java.util.Date d = null; 
    java.util.Date d1 = null; 
    Calendar cal = Calendar.getInstance(); 
    try { 
      d = dfDate.parse("01/02/2012 "); 
      d1 = dfDate.parse(dfDate.format(cal.getTime()));//Returns 15/10/2012 
     } catch (java.text.ParseException e) { 
      e.printStackTrace(); 
     } 

    int diffInDays = (int) ((d.getTime() - d1.getTime())/ (1000 * 60 * 60 * 24)); 
    System.out.println(diffInDays); 

चेक Ex1 और Ex2 अधिक विस्तृत उदाहरण

+0

01/02/2013 दिनांक तय दिनांक है लेकिन मैं अपने कोड में वर्तमान दिनांक को ठीक से नहीं करना चाहता हूं। मैं चाहता हूं कि जब मैं ऐप चलाता हूं, तो यह सिस्टम से वर्तमान दिनांक लेता है और यह diffirences की गणना करता है। मैं सिस्टम से वर्तमान दिनांक कैसे प्राप्त कर सकता हूं और कोड में ठीक कर सकता हूं? –

+0

मैंने कोड बदल दिया, इसे फिर से जांचें –

+0

thanx इतना। मुझे आशा है कि यह –

1

के लिए आप DateUtils में एक बार देख ले सकता है, कि कुछ उपयोगिता तरीके प्रदान करता है दो तिथियों के बीच समय बीत गणना करने के लिए है, लेकिन केवल प्रतिनिधित्व के लिए। दिनों/मिलीसेकंड के बीच कनवर्ट करने के लिए सीधे दृष्टिकोण का उपयोग न करें क्योंकि यह लीप साल, लीप सेकंड, ग्रीष्मकालीन/शीतकालीन समय में परिवर्तन, आदि पर विचार नहीं करता है। उन विचारों को कैलेंडर कक्षाओं द्वारा नियंत्रित किया जाता है।

अद्यतन आप Joda पुस्तकालय का उपयोग कर सकते एक आप की जरूरत की तरह रिश्तेदार की तारीख और समय गणना करने के लिए।