java - 无法解析带时区的日期

标签 java android date datetime jakarta-ee

为了观察,我只是添加了我的代码 fragment 。它适用于具有时区偏移的格式日期,但无法解析格式化的内容。

    SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss.SZ");
    Date javaDate = new Date();
    String stringDate = format.format(javaDate);
    System.out.println("Date: " + stringDate);

    try {
        javaDate = format.parse(stringDate); //reverse of format
    } catch (ParseException e) {
        e.printStackTrace();
    } 

有什么直接的方法吗?考虑到 20140916130644.236+0600 是您的日期字符串,您应该使用时区解析它 您的日期格式是什么?您可以轻松解析 yyyyMMddHHmmss.S 模式,而 . 不是事实,主要事实是 Z 而解析不是为了格式化。

最佳答案

因为 . 无效,删除它并像这样尝试

SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmssSZ");

或者如果你想要 '.'然后像这样使用

SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss'.'SZ");

关于java - 无法解析带时区的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25861804/

相关文章:

java - 发生java.lang.ClassCastException时如何确定实际类?

android - 如何在 android 操作栏菜单项中显示文本周围的边框?

java - 在 Android 应用中仅显示截止日期为今天的待办事项

android - Google Oauth2 给出 "invalid_request"响应以获取访问 token 和刷新 token

javascript - 将 AngularJS 中的时间戳格式化为自定义要求

date - 宏以非标准格式在当前日期的文件夹中选择文件

java - 从 Eclipse 执行 servlet 时出错

java - Android Studio 多个 onCreate 方法

java - 如何只允许用户输入字符并进行验证?

android - LinearLayout 无法正确对齐