2012-03-02 22 views
25

मैं अगर निम्न तारीख ISO8601 अनुरूप है सोच रहा हूँ:एक आईएसओ 8601 दिनांक में, टी चरित्र अनिवार्य है?

2012-03-02 14:57:05.456+0500 

IOW (यकीन है कि के लिए, 2012-03-02T14: 57! ०५.४५६ + 0500 अनुरूप है, लेकिन ऐसा नहीं है कि ज्यादा मानव पठनीय है), तारीख और समय के बीच टी अनिवार्य है?

उत्तर

19

यह तब तक आवश्यक है जब तक कि "सूचना विनिमय में भागीदार" इसे छोड़ने के लिए सहमत न हों।

का हवाला देते हुए ISO 8601 standard, खंड 4.3.2:

चरित्र [टी] इन भाव में दिन घटक के समय के प्रतिनिधित्व के शुरू इंगित करने के लिए समय डेसिग्नेटर के रूप में इस्तेमाल किया जाएगा। [...]

नोट सूचना आदान में भागीदारों की आपसी सहमति से, चरित्र [टी] अनुप्रयोगों में छोड़ा जा सकता है, जहां दूसरों के साथ डेट और दिन प्रतिनिधित्व के समय भ्रमित करने का कोई जोखिम परिभाषित किया गया है इस अंतरराष्ट्रीय मानक में।

इसे छोड़ना काफी आम है, लेकिन इसे छोड़कर सलाह दी जाती है कि प्रतिनिधित्व मशीन-पठनीय होने के लिए है और आपके पास यह स्पष्ट समझौता नहीं है कि आप इसे छोड़ सकते हैं।

+1

मैं बस में पाया गया कि नई तिथि ("2012-03-02T14: 57: 05") जावास्क्रिप्ट में समय क्षेत्र के अनुसार समय को समायोजित करेगा, नई, जबकि तिथि ("2012-03-02T14: 57: 05") समय को समायोजित नहीं करेगी। – code4j

+9

@ code4j: क्या मुझे कुछ याद आया, या वे वही हैं? –

+5

हे भगवान! मैं टी पत्र को मिटाना भूल गया। यह होना चाहिए: नई तिथि ("2012-03-02T14: 57: 05"): टाइमज़ोन के अनुसार समय समायोजित करें जबकि नई तिथि ("2012-03-02 14:57:05") समायोजित नहीं करेगी समय – code4j

7

तारीख आईएसओ 8601 अनुरूप के रूप में कीथ थॉम्पसन संकेत नहीं है, लेकिन यह अनुरूप है आरएफसी 3339, आईएसओ 8601. की क्रमबद्ध प्रोफ़ाइल के साथ है। RFC 3339 से निम्न पाठ के तल पर नोट देखें:

date-time  = full-date "T" full-time 

    NOTE: Per [ABNF] and ISO8601, the "T" and "Z" characters in this 
    syntax may alternatively be lower case "t" or "z" respectively. 

    This date/time format may be used in some environments or contexts 
    that distinguish between the upper- and lower-case letters 'A'-'Z' 
    and 'a'-'z' (e.g. XML). Specifications that use this format in 
    such environments MAY further limit the date/time syntax so that 
    the letters 'T' and 'Z' used in the date/time syntax must always 
    be upper case. Applications that generate this format SHOULD use 
    upper case letters. 

    NOTE: ISO 8601 defines date and time separated by "T". 
    Applications using this syntax may choose, for the sake of 
    readability, to specify a full-date and full-time separated by 
    (say) a space character.