我正在尝试让我的日历以dd / MM / yyyy格式打印它的日期,但它似乎不起作用。
我的代码是:
SimpleDateFormat form = new SimpleDateFormat("dd/MM/yy", Locale.ENGLISH);
Date now = new Date("19/11/16");
form.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println(form.format(now));
Calendar cal = Calendar.getInstance();
cal.setTime(now);
System.out.println(cal.get((Calendar.DAY_OF_WEEK)));
if(cal.get((Calendar.DAY_OF_WEEK)) < 7 || cal.get((Calendar.DAY_OF_WEEK)) > 1) {
System.out.println("It's a weekday");
}
else {
System.out.println("It's a weekend");
}
输出是:
10/07/17
3
这是一个工作日
有人能发现这个问题吗?
答案 0 :(得分:3)
您正在调用的Date
构造函数正在创建包含错误字段的Date
,以使用您的格式解析Date
来初始化String
。像
Date now = form.parse("19/11/16");
确保捕获(或重新抛出)ParseException
。有了这两个变化,我就得到了
19/11/16
7
It's a weekday