java.time
मार्क जेरोनिमस ने पहले ही कहा था । मैं इसे थोड़ा और दूर कर रहा हूं। बस पाठ को एकल उद्धरण के अंदर शाब्दिक रूप से मुद्रित करने के लिए रखें।
DateTimeFormatter yearFormatter = DateTimeFormatter.ofPattern("yyyy 'year'");
System.out.println(LocalDate.of(2010, Month.FEBRUARY, 3).format(yearFormatter));
System.out.println(Year.of(2010).format(yearFormatter));
System.out.println(ZonedDateTime.now(ZoneId.of("Europe/Vilnius")).format(yearFormatter));
अभी चल रहा है जब आउटपुट:
2010 year
2010 year
2019 year
यदि आप एक DateTimeFormatterBuilderऔर इसके appendPatternतरीके का उपयोग कर रहे हैं , तो उसी तरह एकल उद्धरण का उपयोग करें। या इसकी appendLiteralविधि का उपयोग करें और कोई उद्धरण नहीं।
हम प्रारूप में एक ही बोली कैसे लगाते हैं? दो एकल उद्धरण एक का उत्पादन करते हैं। इससे कोई फर्क नहीं पड़ता कि डबल सिंगल कोट सिंगल कोट्स के अंदर है या नहीं:
DateTimeFormatter formatterWithSingleQuote = DateTimeFormatter.ofPattern("H mm'' ss\"");
System.out.println(LocalTime.now(ZoneId.of("Europe/London")).format(formatterWithSingleQuote));
10 28 '34 "
DateTimeFormatter formatterWithSingleQuoteInsideSingleQuotes
= DateTimeFormatter.ofPattern("hh 'o''clock' a, zzzz", Locale.ENGLISH);
System.out.println(ZonedDateTime.now(ZoneId.of("America/Los_Angeles"))
.format(formatterWithSingleQuoteInsideSingleQuotes));
02 बजे, प्रशांत डेलाइट समय
उपरोक्त सभी फॉर्मेटर्स का उपयोग पार्सिंग के लिए भी किया जा सकता है। उदाहरण के लिए:
LocalTime time = LocalTime.parse("16 43' 56\"", formatterWithSingleQuote);
System.out.println(time);
16:43:56
SimpleDateFormatलगभग 10 साल पहले यह सवाल पूछे जाने पर जिस वर्ग का इस्तेमाल किया गया था वह बेहद तकलीफदेह और पुराना है। मेरा सुझाव है कि इसके बजाय आप जावा का उपयोग करें। आधुनिक जावा तिथि और समय एपीआई। यही कारण है कि मैं बस यही प्रदर्शित करता हूं।
लिंक
SimpleDateFormatएक-दो उत्तरों में इस्तेमाल किया जाने वाला वर्ग बेहद परेशान करने वाला और लंबे समय तक पुराना है। इससे बचो। इसके बजाय मार्क जेरोनिमस द्वारा संक्षिप्त उत्तर का उपयोग करें जावा, आधुनिक जावा तिथि और समय एपीआई का उपयोग ।