【发布时间】:2026-01-08 19:45:02
【问题描述】:
我正在开发一个简单的 android 应用程序,我需要在 java、android 中转换一个包含日期和时间的字符串。这是我的字符串的示例格式:
Sun May 20 18:07:13 EEST 2018
这是我尝试将其转换为日期的方法:
SimpleDateFormat formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy");
Date date = formatter.parse("Sun May 20 18:07:13 EEST 2018");
这是我收到的错误消息。我哪里做错了??
W/System.err: java.text.ParseException: Unparseable date: "Sun May 20 18:07:13 EEST 2018" (at offset 0)
【问题讨论】:
-
身份证。工作得很好:ideone.com/ZFd7lG
-
顺便考虑扔掉长期过时且臭名昭著的麻烦
SimpleDateFormat和朋友,并将ThreeTenABP添加到您的Android项目中,以便使用java.time,现代Java日期和时间API .使用起来感觉好多了。 -
@OleV.V.我会试一试,谢谢body。
-
作为 Ole V.V.评论说,麻烦的日期时间类,如
java.util.Date、java.util.Calendar和java.text.SimpleDateFormat现在是遗留的,被 java.time 类所取代。许多 java.time 功能在ThreeTen-Backport 项目中被反向移植到Java 6 和Java 7。在ThreeTenABP 项目中进一步适用于早期的Android。见How to use ThreeTenABP…。 -
在发布之前始终搜索 Stack Overflow。您可以假设所有基本的日期时间问题都已被询问和回答。
标签: java android date datetime