我正在尝试解析约会。当我使用以下日期格式时:
SimpleDateFormat sdf = new SimpleDateFormat("EEEE, MMM d");
使用字符串"星期一,5月19日",做
cal.setTime(sdf.parse(dateString));
以短格式取出一周中的某一天,我得到了"星期二"! Cal的一周似乎设置为3.任何想法为什么?它将在5月份推出,每月推出19次,但它想在星期二的星期几说,而5月19日肯定是我所在地区的星期一。
答案 0 :(得分:7)
parse
method的Javadocs状态:
在解析之前清除所有日历的日期时间字段,并且日历时间字段的日历默认值用于任何缺少的日期时间信息。例如,如果解析操作没有给出年份值,则解析日期的年份值是1970年的GregorianCalendar。
您不能提供一年,因此默认为1970
,并且一周中的某一天会跟进。
答案 1 :(得分:1)
因为1970年5月19日是星期二,并且由于某种原因导致了这一年的违约。