我们使用一个 java 应用程序,它有一个日期选择字段,当您单击该字段时,会打开一个小日历。一周的第一天是星期天。但我希望它是星期一。我尝试从日期设置中的 Windows 控制面板更改它。例如,我将 Windows 日历的第一天设置为星期四。但是在 Java 应用程序的日历中,一周的第一天仍然是星期日。是否可以从 Windows 更改 Java 应用程序的一周的第一天,还是仅从 Java 应用程序的代码更改?
问候
您可以使用 setFirstDayOfWeek() 方法来设置一周的第一天。该方法只能影响 WEEK_OF_MONTH 或 WEEK_OF_YEAR 的返回值。对于 DAY_OF_WEEK,它什么也不做。
你可以实现类似的东西:
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calendar.MONDAY);
int rec = cal.get(Calendar.WEEK_OF_MONTH);
System.out.println(rec);
在此处阅读有关 API 的更多信息
如果你想设置星期一然后使用
Calendar currentCalendar = Calendar.getInstance(new Locale("en","UK"));
如果要设置星期日,请使用
Calendar currentCalendar = Calendar.getInstance(new Locale("en","US"));
您的 Java 应用程序使用哪个框架?日期选择字段是什么组件?
在 JavaCalendar
中,默认情况下一周的第一天由系统的区域设置决定。
因此,如果您无法更改应用程序的源代码:
-Duser.country
或java。-Duser.region for
看看这里。Calendar now = Calendar.getInstance();
System.out.println("Current date : " + (now.get(Calendar.MONTH) + 1) + "-"
+ now.get(Calendar.DATE) + "-" + now.get(Calendar.YEAR));
String[] strDays = new String[] { "Sunday", "Monday", "Tuesday", "Wednesday", "Thusday",
"Friday", "Saturday" };
// Day_OF_WEEK starts from 1 while array index starts from 0
System.out.println("Current day is : " + strDays[now.get(Calendar.DAY_OF_WEEK) - 1]);