gpt4 book ai didi

java - 字符串到日历的转换,同时保持时间

转载 作者:行者123 更新时间:2023-12-01 07:39:52 24 4
gpt4 key购买 nike

我正在尝试输出一个也包含时间的日历对象。我已经使用 SimpleDateFormat 编写了一个方法来执行此操作。

    public static Calendar stringToCalendar(String string)
{
Calendar cal = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("yyyyMMdd - HHmmss");
Date date = new Date();
try {
date = formatter.parse(string);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
cal.setTime(date);
return cal;
}

我的输入字符串是“20110614-15:05:00”

但是它不喜欢这个值并给了我以下错误:

java.text.ParseException: Unparseable date: "20110614-15:05:00"
at java.text.DateFormat.parse(DateFormat.java:337)
at transformer.Converter.stringToCalendar(Converter.java:22)

为什么无法检测到 15:05:00 作为时间?

最佳答案

您需要使指定的日期格式与数据的实际格式相匹配。在这种情况下,您缺少冒号,并且您期望不存在的空格。您的格式似乎应为 "yyyyMMdd-HH:mm:ss"

此外,捕获并仅记录错误,然后继续当前日期,就好像什么也没发生一样,几乎肯定是错误的做法。为什么不直接声明 stringToCalendar 抛出 ParseException

(最后,我个人发现 Joda Time 对于日期和时间工作来说是一个更好的 API。如果您正在做这样的重要工作,您至少应该看看它并且< em>考虑切换。)

关于java - 字符串到日历的转换,同时保持时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6384196/

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