如果我有这个:
private static final String DATE_FORMAT = "dd/MM/yyyy";
DateFormat formatter = new SimpleDateFormat(DATE_FORMAT);
formatter.setLenient(false);
formatter.parse("01/01/98");
如果传入2位数的年份,我的应用程序应该抛出异常吗?这似乎没有任何问题。
SimpleDateFormat
用于从String解析Date和从Date生成String。对格式String的解释因这些用法而异。在您的例子中,您正在从字符串中解析日期。98
是一个合法的值,并按字面解释(即。98 AD),因为您正在使用yyyy
。如果您将yyyy
替换为yy
或y
,那么解析应该将98解释为1998。如果你需要4位数的日期,那么你需要添加一些校验码来做到这一点。
请注意,setLenient不会影响这里的任何内容,因为每个位置的值都是合法的。您不需要在年份位置上有4位数(也不限于4位数)。如果解释不宽大,你通过它“1998/04/12”,它将抛出一个例外,因为1998不在1-12的范围内。如果你设置宽大,那么它将修改该值,使其进入范围(1998变为6)并向前充电。由于年份没有实际界限,所以对年份位置没有影响。
如果我有这个: 如果传入2位数的年份,我的应用程序是否应该抛出异常?这似乎没有任何问题。
问题内容: 我有一个格式。我希望它采用以下格式 以下是我尝试进行此转换的示例: 我得到的输出仍然不是格式。 请让我知道如何格式化从到 问题答案: 是自Unix纪元(1970年1月1日UTC:00:00)以来的毫秒数的容器。 它没有格式的概念。 输出…
问题内容: 我有一个日期格式。如何将其转换为使用JavaScript? 上面的代码为我提供了相同的日期格式。我怎样才能解决这个问题? 问题答案: 你可以做: 用法示例: 输出:
问题内容: 我有一个名为的表,还有一个名为的列,ID的数据如下所示: IN_Date的数据类型为varchar(50)。 我正在尝试将IN_Date转换为mm / dd / yyyy格式。我尝试这样做: 但是格式仍然没有改变。谁能告诉我我要去哪里错了 问题答案: 您需要先进行转换才能将数据固定(正确的数据类型), 然后再 格式化…
问题内容: 我有一个日期为dd-mm-yyyy格式的日期(在我的数据库内)。我需要将其转换为dd-mm-yy格式。我从db中检索了日期并将其存储在字符串中。 1990并不是完全需要的,只需要90.使用java中的split()我尝试了一些东西,但它不会帮助我。任何人都可以帮忙。任何帮助将不胜感激。 问题答案: 试试下面的代码
问题内容: 我正在尝试从转换日期。我已经使用了mktime()函数和其他函数,但是我似乎无法使其工作。我已经成功地将原始日期用作定界符,但更改格式并将其与交换时没有成功。 任何帮助将不胜感激。 问题答案: 通过查看各个组成部分之间的分隔符,可以消除或格式中的日期的歧义:如果该分隔符是斜杠(),则假定为American ;否则,为0。反之,如果分隔符是破折号()或点(),则采用欧洲格式。 使用默认的