gpt4 book ai didi

Java SimpleDateFormat 解析返回错误的日期

转载 作者:行者123 更新时间:2023-12-04 05:00:15 26 4
gpt4 key购买 nike

我正在尝试将“5 月 15 日星期一下午 1 点”格式的字符串解析为日期时间,以便我可以将其输入到数据库中。但是,当我对此进行测试时,解析并没有在正确的日子返回。有谁知道发生了什么?

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class App
{
public static void main( String[] args ) throws ParseException
{

String inDateTime = "Monday, May 15 at 1:00 PM";

Date date = new SimpleDateFormat("EEE, MMM dd 'at' hh:mm aa").parse(inDateTime);

String outDateTime = new SimpleDateFormat("EEEEEE MMMMMM dd hh:mm aa").format( date );

System.out.println(outDateTime);

}
}

以及来自 netbeans 的输出
[exec:exec]
Friday May 15 01:00 PM

任何想法为什么星期一变成星期五?

最佳答案

您没有设置年份 SimpleDateFormat正在使用那个时代的那个。 1970 年 5 月 15 日发生在一个星期五。

如果存在月份和日期字段,则日期输入字段将被忽略,因此可以省略此字段。

您需要指定 5 月 15 日发生在星期一的年份。

关于Java SimpleDateFormat 解析返回错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16235970/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com