2012-05-12 12 views
8

क्या कोई मुझे बता सकता है कि मुझे निर्दिष्ट लोकेल (या डिफ़ॉल्ट लोकेल) के लिए डिफ़ॉल्ट दिनांक और समय प्रारूप पैटर्न (स्ट्रिंग) कैसे प्राप्त किया जा सकता है।मैं डिफ़ॉल्ट दिनांक और समय प्रारूप पैटर्न कैसे प्राप्त कर सकता हूं

मैं पहले से ही क्या पाया (किसी और के लिए उपयोगी हो सकता है):

  1. कैसे डिफ़ॉल्ट स्थान प्राप्त करने के लिए।

    Locale currentLocale= Locale.getDefault(); 
    System.out.print(currentLocale.toString()); 
    
    Result is "en_US" 
    
  2. दशमलव विभाजक कैसे प्राप्त करें।

    DecimalFormatSymbols decimalFormatSymbols = 
                new DecimalFormatSymbols(currentLocale); 
    System.out.print(decimalFormatSymbols.getDecimalSeparator()); 
    
    Result is "." 
    
  3. डिफ़ॉल्ट दिनांक और समय स्वरूप पैटर्न (स्ट्रिंग) कैसे प्राप्त करें;

    (do something) 
    System.out.print(something); 
    And got at output something like this: "dd/mm/yyyy" or "hh:mm:ss".. 
              or other values for specified locale. 
    

धन्यवाद एक बहुत।

युपीडी: मिले समाधान:

SimpleDateFormat simpleDateFormat = new SimpleDateFormat(); 
String dateLocalizedFormatPattern = simpleDateFormat.toLocalizedPattern(); 

The result of System.out.print(dateLocalizedFormatPattern) 
              on my device is "M/d/yy h:mm a". 
+0

http://stackoverflow.com/questions/10204291/convert-time-to-millisecond-and-find-out-time-period-in-java-or-android/10204628#10204628 – Khan

उत्तर

3

अद्यतन

रूसी भालू सवाल करने के लिए अपने अद्यतन उस प्रारूप स्ट्रिंग रिटर्न SimpleDateFormat में एक toLocalizedPattern() विधि है में उल्लेख के रूप में।

... 
ResourceBundle r = LocaleData.getDateFormatData(loc); 
if (!isGregorianCalendar()) { 
    try { 
     dateTimePatterns = r.getStringArray(getCalendarName() + ".DateTimePatterns"); 
    } catch (MissingResourceException e) { 
    } 
} 
if (dateTimePatterns == null) { 
    dateTimePatterns = r.getStringArray("DateTimePatterns"); 
} 
... 

तो वास्तविक स्वरूप तार एक ResourceBundleLocaleData.getDateFormatData() विधि के माध्यम से पहुँचा में हो रहा है: यह निजी निर्माता है में

मूल जवाब

SimpleDateFormat निम्नलिखित कोड का उपयोग करता है।

दुर्भाग्यवश LocaleData कक्षा आंतरिक sun.util.resources पैकेज का हिस्सा है।

+0

पर दिए गए मेरे उत्तर की जांच करें जोहान, बहुत बहुत धन्यवाद! –

+0

लेकिन मुझे लगता है कि आपको सरल समाधान मिला है जिसे मैं SimpleDateFormat में याद करता हूं :-) –

+0

आपके उत्तर ने मुझे इसका नेतृत्व किया :-) –

0

मुझे लगता है कि क्या आप चाहते हैं DateFormat वर्ग का प्रयोग है। getDateInstance(int, Locale) विधि देखें।

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