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
एक-दो उत्तरों में इस्तेमाल किया जाने वाला वर्ग बेहद परेशान करने वाला और लंबे समय तक पुराना है। इससे बचो। इसके बजाय मार्क जेरोनिमस द्वारा संक्षिप्त उत्तर का उपयोग करें जावा, आधुनिक जावा तिथि और समय एपीआई का उपयोग ।