2009-06-29 22 views
5

MSDN on DateTime.ToString ToString ("एस") हमेशा sortable XML स्कीमा शैली स्वरूपण के प्रारूप में स्ट्रिंग लौटाने चाहिए, जैसे के अनुसार: 2008-10-01T17: 04: 32,0000000क्या डेटटाइम.ToString ("s") हमेशा एक ही प्रारूप लौटाता है?

परावर्तक में मैं DateTimeFormatInfo अंदर इस पैटर्न के लिए आया था ।

public string SortableDateTimePattern 
{ 
     get 
     { 
      return "yyyy'-'MM'-'dd'T'HH':'mm':'ss"; 
     } 
} 

क्या डेटटाइम.ToString ("s") हमेशा इस प्रारूप में एक स्ट्रिंग लौटाता है?
बावजूद संस्कृति, क्षेत्र, ...


हाँ, यह
कोड कि

var dateTime = DateTime.Now; 
var originialString = dateTime.ToString("s"); 
string testString; 

foreach (var c in System.Globalization.CultureInfo.GetCultures(CultureTypes.AllCultures)) 
{ 
    Thread.CurrentThread.CurrentUICulture = c; 
    if (c.IsNeutralCulture == false) 
    { 
     Thread.CurrentThread.CurrentCulture = c; 
    } 

    testString = dateTime.ToString("s"); 
    Console.WriteLine("{0} ", testString); 
    if (originialString != testString) 
    { 
     throw new ApplicationException(string.Format("ToString(s) is returning something different for {0} " , c)); 
    } 
} 
+1

इस प्रश्न को अभी तक कैसे बंद नहीं किया गया है? – Irwin

उत्तर

14

हाँ यह करता है परीक्षण करने के लिए करता है। जैसा कि अन्य ने कहा है कि इसमें केवल संख्यात्मक मान और स्ट्रिंग अक्षर (उदा। 'टी' और ':') शामिल हैं, जो कुछ भी क्षेत्र या संस्कृति सेटिंग्स द्वारा बदला जाता है।

11

हाँ। Breaking that pattern down, यह केवल संख्यात्मक गुण है, वहां किसी भी दिन या दिन नाम जैसे किसी भी संदर्भ का कोई संदर्भ नहीं है।

yyyy - 4 अंकों तारीख
एम.एम. - 2 अंकों महीने, आगे शून्य
dd साथ - 2 अंकों दिन, अग्रणी शून्य
टी साथ - एक शाब्दिक टी
एचएच - 2 शून्य घंटे, अग्रणी शून्य के साथ, 24 घंटे प्रारूप
मिमी - 2 अंकों का मिनट, अग्रणी शून्य
के साथएसएस - 2 अंकों दूसरा, अग्रणी शून्य