2011-08-08 11 views
13

मैं एंड्रॉइड फोन में उपयोगकर्ताओं द्वारा चुने गए डेट प्रारूप की समस्या पर काम कर रहा हूं। मैं स्टैक ओवरलो पर लगभग कई प्रश्नों और उत्तरों से गुजर चुका हूं और इसे सही जवाब मिला है। उदाहरण के लिए: - मैं फोन में DateFormat का चयन किया है "शनि, 31 दिसंबर 2011" है लेकिन जब मैं आधारित प्रश्न के रूप में इस्तेमाल stackoverflow पर उत्तर दिया: -एंड्रॉइड में उपयोगकर्ता द्वारा चयनित दिनांक प्रारूप कैसे प्राप्त करें?

DateFormat df = android.text.format.DateFormat.getDateFormat(context.getApplicationContext()); 
tv.setText(df.format(date)); 

कोड से ऊपर मुझे रिटर्न 2011/06/08 (मिमी/डीडी/yyyy) प्रारूप। लेकिन फोन पर चुने गए दिनांक प्रारूप को देखें। मैं सही प्रारूप कैसे प्राप्त कर सकता हूं?

उत्तर

27

एक आवेदन में मैं वर्तमान में विकसित कर रहा हूँ मैं निम्नलिखित है, जो मैं तुम क्या आवश्यकता

final String format = Settings.System.getString(getContentResolver(), Settings.System.DATE_FORMAT); 
if (TextUtils.isEmpty(format)) { 
    dateFormat = android.text.format.DateFormat.getMediumDateFormat(getApplicationContext()); 
} else { 
    dateFormat = new SimpleDateFormat(format); 
} 
+0

प्रयास करें के लिए पुस्तकालय है क्या करेंगे विश्वास करते हैं का उपयोग यह सेटिंग्स? – KJEjava48

2

DateFormat.getDateFormat अपेक्षा के अनुसार काम करता है। यह तीन संभव स्वरूपों में से एक देता है:

  1. MM/DD/YYYY
  2. DD/MM/YYYY
  3. YYYY/MM/DD

मुझे यकीन है कि कैसे आप अपने "शनि, 31 दिसंबर 2011" प्रारूप सेट नहीं हूँ, लेकिन जहां तक ​​मुझे पता है कि स्टॉक एंड्रॉइड केवल तीन निर्दिष्ट प्रारूपों में से एक सेट करने की अनुमति देता है (सेटिंग्स -> दिनांक और समय -> तिथि प्रारूप का चयन करें)।

enter image description here

1

इस

Date inDate = inFormat.parse(in); 
DateFormat outFormat = android.text.format.DateFormat.getDateFormat(context); 
out=outFormat.format(inDate); 

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^