-ब-दिन के नाम का पता लगाएं? क्या इसके लिए पहले से ही कुछ फ़ंक्शन हैं?वर्ष, माह और दिन
उत्तर
आप इसे खोजने के लिए Calendar ऑब्जेक्ट का उपयोग कर सकते हैं।
एक बार जब आप कैलेंडर उदाहरण बनाने आप DAY_OF_WEEK मिल (जो एक पूर्णांक है) तो आप वहाँ से दिन पा सकते हैं)
आप एक स्विच बयान like so उपयोग कर सकते हैं:
import java.util.*;
public class DayOfWeek {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
int day = cal.get(Calendar.DAY_OF_WEEK);
System.out.print("Today is ");
switch (day) {
case 1:
System.out.print("Sunday");
break;
case 2:
System.out.print("Monday");
break;
case 3:
System.out.print("Tuesday");
break;
case 4:
System.out.print("Wednesday");
break;
case 5:
System.out.print("Thursday");
break;
case 6:
System.out.print("Friday");
break;
case 7:
System.out.print("Saturday");
}
System.out.print(".");
}
}
एक का निर्माण वर्ष, महीने और दिन के साथ ग्रेगोरियन कैलेंडर, फिर दिन का नाम ढूंढने के लिए पूछें। कुछ इस तरह:
int year = 1977;
int month = 2;
int dayOfMonth = 15;
Calendar myCalendar = new GregorianCalendar(year, month, dayOfMonth);
int dayOfWeek = myCalendar.get(Calendar.DAY_OF_WEEK);
ध्यान दें कि सप्ताह के दिन किसी पूर्णांक स्थान के सप्ताह दिन प्रतिनिधित्व में दिन के क्रमसूचक प्रतिनिधित्व के रूप में दिया जाता है। आईई, एक लोकेल में जहां सप्ताहांत सोमवार को शुरू होता है और रविवार को समाप्त होता है, एक 2 मंगलवार का प्रतिनिधित्व करेगा, जबकि यदि लोकेल सप्ताहांत रविवार को शुरू होता है तो वही 2 सोमवार का प्रतिनिधित्व करेगा।
संपादित
और जवाब संपादन के बहुत हो रहा है के बाद से वहाँ, मेरा पीछा जोड़ने की अनुमति:
DateFormatSymbols symbols = new DateFormatSymbols(Locale.getDefault());
String dayOfMonthStr = symbols.getWeekdays()[dayOfMonth];
ईमानदार माना जाता है, मैं SimpleDateFormatter दृष्टिकोण बेहतर लगता है तो क्योंकि यह ऊपर दिखाए गए कोड के समान कोड को समाहित करता है। मुझे इसके बारे में सब भूलने के लिए मूर्खतापूर्ण।
सावधानी: माह शून्य आधारित है, यह 15 मार्च होगा! (फरवरी नहीं) –
मुझे पता है, मैं अपने उदाहरण में मार्च के Ides के लिए लक्ष्य था; पी – Perception
शायद, लेकिन मुझे यकीन है कि अभी भी कुछ प्रोग्रामर इसे नहीं जानते हैं! –
सप्ताह दिन का नाम लोकेल प्रति अलग है। इसलिए आपको उचित लोकेल के साथ DateFormat
का उपयोग करना होगा। उदाहरण के लिए:
SimpleDateFormat format = new SimpleDateFormat("EEEE");
System.out.println(format.format(date));
Date
वस्तु कई मायनों में प्राप्त किया जा सकता है, तो बहिष्कृत Date(..)
निर्माता सहित Calendar.set(..)
तरीकों या Joda समय DateTime
। (बाद के लिए आप उपयोग कर सकते Joda समय के अपने DateTimeFormat
)
new GregorianCalendar().setTime(new Date()).get(DAY_OF_WEEK)
है कि आप एक नंबर, Calendar.SUNDAY == 1
, Calendar.MONDAY == 2
देता है, ...
हाँ, पर यह JDK के साथ एक नहीं बल्कि लंबी प्रक्रिया है। JodaTime एक बेहतर विकल्प हो सकता है (मैंने इसका उपयोग नहीं किया है)।
सबसे पहले, आपको Calendar
ऑब्जेक्ट मिलता है, ताकि आप दिन/माह/वर्ष/टाइमज़ोन से दिनांक बना सकें। बहिष्कृत Date
रचनाकारों में से एक का उपयोग न करें।
फिर उस कैलेंडर से Date
ऑब्जेक्ट प्राप्त करें, और इसे SimpleDateFormat
पर पास करें। ध्यान दें कि स्वरूप वस्तुएं थ्रेडसेफ नहीं हैं।
// by default, this Calendar object will have the current timezone
Calendar cal = GregorianCalendar.getInstance();
cal.set(2011, 6, 22);
// this formatter will have the current locale
SimpleDateFormat format = new SimpleDateFormat("EEEE");
System.out.println(format.format(cal.getTime()));
नोट: कैलेंडर में, महीने शून्य-आधारित हैं। 7 अगस्त के बराबर है, जुलाई नहीं। – BalusC
@ बाल्लूसी - सच, संपादित। मैं शायद ही कभी उस विधि का मुख्य मेन्यू कोड में उपयोग करता हूं, लेकिन यूनिट परीक्षणों में हर समय इसे जला देता हूं। जब मैंने उदाहरण चलाया तो मुझे क्या पता चला कि मुझे अधिक ध्यान देना चाहिए था। – parsifal
आप अलग अलग स्थानों के लिए सप्ताह के दिनों के नाम पाने के लिए this की तरह कुछ कर सकते हैं।
DateFormatSymbols dfs = new DateFormatSymbols(usersLocale);
String weekdays[] = dfs.getWeekdays();
इस के साथ जोड़ा जा सकता है कि:
String nameOfDay = weekdays[day];
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_MONTH, 22); //Set Day of the Month, 1..31
cal.set(Calendar.MONTH,6); //Set month, starts with JANUARY = 0
cal.set(Calendar.YEAR,2011); //Set year
System.out.println(cal.get(Calendar.DAY_OF_WEEK)); //Starts with Sunday, 6 = friday
उपयोग:
Calendar cal = Calendar.getInstance();
int day = cal.get(Calendar.DAY_OF_WEEK);
आप जो खोज रहे हैं प्राप्त करने के लिए
यहाँ महत्वपूर्ण हिस्सा हैके पैटर्न के साथ SimpleDateFormat
सप्ताह के दिन का नाम पाने के लिए।
// Assuming that you already have this.
int year = 2011;
int month = 7;
int day = 22;
// First convert to Date. This is one of the many ways.
String dateString = String.format("%d-%d-%d", year, month, day);
Date date = new SimpleDateFormat("yyyy-M-d").parse(dateString);
// Then get the day of week from the Date based on specific locale.
String dayOfWeek = new SimpleDateFormat("EEEE", Locale.ENGLISH).format(date);
System.out.println(dayOfWeek); // Friday
यहां यह सब आपके लिए एक अच्छी जावा कक्षा में लपेटा गया है। जब Joda-Time लाइब्रेरी का उपयोग कर
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
public class DateUtility
{
public static void main(String args[]){
System.out.println(dayName("2015-03-05 00:00:00", "YYYY-MM-DD HH:MM:ss"));
}
public static String dayName(String inputDate, String format){
Date date = null;
try {
date = new SimpleDateFormat(format).parse(inputDate);
} catch (ParseException e) {
e.printStackTrace();
}
return new SimpleDateFormat("EEEE", Locale.ENGLISH).format(date);
}
}
+2 अगर मैं कर सकता था ... –
स्वीकार्य उत्तर होना चाहिए! Java.text.ParseException आयात करने के लिए मत भूलना; आयात java.text.SimpleDateFormat; आयात java.util। *; ' –
तिथि-समय काम इस तरह की आसान होता है। एक साधारण एक लाइनर।
String dayOfWeek = new LocalDate(2014, 1, 2).dayOfWeek().getAsText(java.util.Locale.ENGLISH);
System.out.println("dayOfWeek: " + dayOfWeek);
जब चलाने ...
dayOfWeek: Thursday
- 1. वर्ष, माह और दिन
- 2. बैच फ़ाइल दिन/माह/वर्ष वाक्यविन्यास?
- 3. UIDatePicker केवल माह और दिन
- 4. अजगर datetime - strptime का उपयोग कर दिन, माह, वर्ष
- 5. किसी दिनांक वस्तु से वर्ष/माह/दिन कैसे प्राप्त करें?
- 6. किसी निश्चित वर्ष/माह
- 7. पायथन प्रश्न: वर्ष और वर्ष का दिन?
- 8. वर्तमान माह और वर्ष कैसे प्राप्त करें
- 9. जेपीए क्वेरी माह/वर्ष फ़ंक्शन
- 10. दिन और महीना (वर्ष के बिना)
- 11. MYSQL: मैं महीने, दिन और वर्ष
- 12. अवरोही तिथि से आदेश - महीने, दिन और वर्ष
- 13. PHP MySQL ब्लॉग आर्काइव मेनू वर्ष और माह
- 14. रेलवे में मार्गों/ब्लॉग/वर्ष:/माह/दिन /: परमालिंक "करने का सबसे अच्छा तरीका है?
- 15. Rails3/jQuery के यूआई datepicker - माह और दिन
- 16. सिस्टम दिनांक और विभाजित दिन, महीना और वर्ष
- 17. वर्ष के दिन से वर्ष का सप्ताह प्राप्त करें
- 18. चालू माह और तारीख jQuery
- 19. तिथि सीमाओं के आधार पर प्रति माह दिन सारांशित करें
- 20. दिन, महीने, वर्ष से पाइथन टाइमस्टैम्प
- 21. चालू वर्ष के पहले/अंतिम दिन
- 22. जावा में वर्ष के जूलियन दिन
- 23. दिन, महीने और वर्ष से एनएसडीएट उत्पन्न करें
- 24. मैं वर्तमान माह का पहला दिन कैसे प्राप्त करूं?
- 25. रेल 2.3.5 I18n माह/दिन नाम अनुवाद की समस्या
- 26. वर्ष दृश्य
- 27. एसक्यूएल: महीने और दिन
- 28. उद्देश्य-सी: सप्ताह + माह नाम
- 29. किसी विशिष्ट महीने/वर्ष के महीने का पहला दिन प्राप्त करना
- 30. क्रेडिट कार्ड के लिए माह और वर्ष चयन कैसे प्रदर्शित करें
आप अपने जवाब मिला है, तो आप इस सवाल का जवाब है कि आप मदद की सबसे को स्वीकार करना चाहिए। – RMT