gpt4 book ai didi

java - 简单日期格式 ParseException

转载 作者:行者123 更新时间:2023-11-30 03:56:55 26 4
gpt4 key购买 nike

我需要将输入日期格式更改为我想要的格式。

String time = "Fri, 02 Nov 2012 11:58 pm CET";
SimpleDateFormat displayFormat =
new SimpleDateFormat("dd.MM.yyyy, HH:mm");
SimpleDateFormat parseFormat =
new SimpleDateFormat("EEE, dd MMM yyyy HH:mm aa z");
Date date = parseFormat.parse(time);
System.out.println("output is " + displayFormat.format(date));

它给我这个错误

java.text.ParseException: Unparseable date: "Fri, 02 Nov 2012 11:58 pm CET"
at java.text.DateFormat.parse(Unknown Source)
at Main.main(Main.java:10)

谁能帮帮我?因为这段代码不起作用。

最佳答案

Android 的 z 似乎不接受 XXX 格式的时区(例如“CET”)。 (来自 the SimpleDateFormat documentation 。)

试试这个:

String time = "Fri, 02 Nov 2012 11:58 pm +0100"; // CET = +1hr = +0100
SimpleDateFormat parseFormat =
new SimpleDateFormat("EEE, dd MMM yyyy hh:mm aa Z"); // Capital Z
Date date = parseFormat.parse(time);

SimpleDateFormat displayFormat =
new SimpleDateFormat("dd.MM.yyyy, HH:mm");
System.out.println("output is " + displayFormat.format(date));

output is 02.11.2012, 22:58

注意:此外,我认为您的意思是 hh 而不是 HH,因为您有 PM

显示结果 here . (这使用 Java7 的 SimpleDateFormat,但 Android 也应该支持 RFC 822 时区 (+0100)。)

NB:此外,Android 的 z 似乎接受全名(他们给出的示例是“太平洋标准时间”),您可以简单地指定“欧洲中部时间” "而不是 "CET"。

关于java - 简单日期格式 ParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13206640/

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