मुझे स्ट्रिंग से Durations पार्स करने की आवश्यकता है। जावा 8 एक आधार के रूप ISO-8601 मानक लेने कि लिए एक विधि प्रदान करते हैं:java.time में बग। अवधि
Duration.parse("p10d"); // parses as ten days
Duration.parse("pt1h"); // parses as one hour
मानक कहता है कि "यह आपसी सहमति से 'टी' चरित्र को छोड़ करने की अनुमति है" के रूप में Durations.parse() छुट्टी की जावाडोक के कुछ उदाहरण T
बाहर। उनके मुताबिक, निम्नलिखित अभिव्यक्ति "-6 घंटे और +3 मिनट" के रूप में पार्स चाहिए:
"P-6H3M"
लेकिन मैंने पाया कि सभी भाव T
ommitting एक DateTimeParseException
फेंक देते हैं। क्या यह parse()
विधि में एक बग है या क्या मुझे कुछ याद आ रहा है?
मुझे लगता है कि "आपसी समझौते" के बारे में उद्धरण केवल संयुक्त तिथि-समय प्रतिनिधित्व, नहीं अवधि प्रतिनिधित्व में "टी" को दर्शाता है। – RealSkeptic