将iso8601字符串日期时间格式转换为Java中的日期[重复]

2024-01-13

All,

我知道我之前曾问过类似的问题,关于使用 Java 将 ISO8601 日期字符串解析为日期,但这是使用 SimpleDateFormat 类的更具体的问题。

我读过这篇文章维基 ISO8601 日期 http://en.wikipedia.org/wiki/ISO_8601.

客户向我提供了一个 XML 文件,其中包含以下格式的日期和时间:

2012-08-24T12:15:00+02:00

根据维基文章,这是有效的,而且很公平。

如果使用以下代码来解析此字符串,则会引发 ParseException 并显示消息“无法解析日期:“2012-08-24T12:15:00+02:00””。

String inputDate = "2012-08-24T12:15:00+02:00";
String format = "yyyy-MM-dd'T'HH:mm:ssz";

SimpleDateFormat sdf = new SimpleDateFormat(format);
Date d = sdf.parse(inputDate);

问题出在时区说明符中的冒号。时区中的 +02:00 会导致引发异常。 +0200 工作正常。

问题是,是否可以使用 SimpleDateFormat 解析这种类型的字符串?

Thanks

Andez


不,使用SimpleDateFormat,解析这个日期是不可能的(至少在jdk 6或更低版本中是不可能的)。我们必须自己为此编写自己的适配器。

请注意,由于此格式是 XML 架构的有效部分,因此您可以使用DatatypeConverter.parseDateTime() http://docs.oracle.com/javase/6/docs/api/javax/xml/bind/DatatypeConverter.html#parseDateTime%28java.lang.String%29方法来解析这个日期。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将iso8601字符串日期时间格式转换为Java中的日期[重复] 的相关文章

  • 从 OMElement 对象获取 InputStream/io.Reader

    我有一个OMElement对象 从中我想得到一个InputStream或读者对象 我想要的是流式传输xml来自OMElement我有 没有加载到内存中 我只能得到XMLStreamReader对此表示反对 但我找不到办法得到InputStr
  • JavaEE 8 教程,在 hello1 项目上部署失败

    我正在尝试学习 Java EE 8 我遵循了官方指南https javaee github io tutorial https javaee github io tutorial 但我有这个问题 cargo maven2 plugin 1
  • 在 Kotlin 中实现返回 Collection 的 Java 方法

    我将 Kotlin 与 Spring Security 结合使用 实现该方法时 public interface UserDetails extends Serializable Collection
  • .java 和 .scala 类之间是否可能存在循环依赖?

    假设我在 java 文件中定义了类 A 在 scala 文件中定义了类 B A 类使用 B 类 B 类使用 A 类 如果我使用 java 编译器 则会出现编译错误 因为 B 类尚未编译 如果我使用scala编译器A类将找不到 有没有可以同时
  • JUnit 使用 Mockito 测试异步方法

    我已经使用 Spring Framework 版本 5 0 5 RELEASE 在 Java 1 8 类中实现了异步方法 public class ClassToBeTested Autowired private MyComponent
  • JUnit Eclipse 显示 System.out.print() 的

    我正在使用 JUnit 3 和 Eclipse 3 4 当我运行 JUnit 测试用例时 一切正常并且测试完美完成 唯一的事情是我想查看我正在运行的类的输出 所有类都具有一些输出值的基本 System out print 因此 当我运行测试
  • java“void”和“非void”构造函数

    我用 java 编写了这个简单的类 只是为了测试它的一些功能 public class class1 public static Integer value 0 public class1 da public int da class1 v
  • Maven 多模块项目结构问题

    自从过去几周构建我的 Maven 多模块项目以来 这是我的一次有趣的经历 当我决定使用 Maven 进行构建生命周期管理时 我有几个原因希望选择 Maven A 大多数开发团队都是分开的 这样每个团队都可以在项目中的单独模块上工作 例如团队
  • 独占锁定ConcurrentHashMap

    我知道不可能锁定 ConcurrentHashMap 进行独占访问 但是 我找不到原因 是因为构成CHM的 Segment 没有被api公开吗 据推测 如果是的话 客户端代码可以执行 交接 锁定 Cheers 我知道不可能锁定 Concur
  • Java 的 QP 求解器 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • getClassLoader().getResource() 返回 null

    我有这个测试应用程序 import java applet import java awt import java net URL public class Test extends Applet public void init URL
  • Vertx HttpClient getNow 不工作

    我的 vertx HttpClient 有问题 下面的代码显示使用 vertx 和纯 java 测试 GET Vertx vertx Vertx vertx HttpClientOptions options new HttpClientO
  • 您能让 Tomcat 6 stdout.log 文件表现得像 log4j DailyRollingFileAppender 吗?

    我们使用的是 Tomcat 6 的 Windows 安装 默认情况下 我们应用程序的 log4j 输出将转到 catalina base logs stdout log 文件 该日志文件仅在我们重新启动 Tomcat 时滚动 并且文件名始终
  • 如何在将数据发送到 Firebase 数据库之前对其进行加密?

    我正在使用 Firebase 实时数据库制作聊天应用程序 我知道 Firebase 非常安全 只要您的规则正确 但我自己可以阅读使用我的应用程序的人的所有聊天记录 我想阻止这种情况 为此我需要一种解密和加密方法 我尝试使用凯撒解密 但失败了
  • 字节码和位码有什么区别[重复]

    这个问题在这里已经有答案了 可能的重复 LLVM 和 java 字节码有什么区别 https stackoverflow com questions 454720 what are the differences between llvm
  • 存储过程将多个表返回到 spring jdbc 模板

    我正在使用 JdbcTemplate 从 Spring DAO 类调用存储过程 我的问题是 存储过程返回多个表 有没有办法使用 Spring JdbcTemplate 访问多个表 如果我使用jdbcTemplate queryForList
  • 防止 Firebase 中的待处理写入事务不起作用

    我的目标是在单击按钮时将名称插入 Cloud Firestore 中 但如果用户未连接到互联网 我不希望保存处于挂起状态 我不喜欢 Firebase 保存待处理写入的行为 即使互联网连接已恢复 我研究发现Firebase 开发人员建议使用事
  • 监控 Java 应用程序上的锁争用

    我正在尝试创建一个小基准 在 Groovy 中 以显示几个同步方法上的高线程争用 当监控自愿上下文切换时 应该会出现高争用 在 Linux 中 这可以通过 pidstat 来实现 程序如下 class Res private int n s
  • 日期时间解析异常

    解析日期时 我的代码中不断出现异常错误 日期看起来像这样 Wed May 21 00 00 00 EDT 2008 这是尝试读取它的代码 DateTimeFormatter formatter DateTimeFormatter ofPat
  • 将隐藏(生物识别)数据附加到 pdf 上的数字签名

    我想知道是否可以使用 iText 我用于签名 或 Java 中的其他工具在 pdf 上添加生物识别数据 我会更好地解释一下 在手写板上签名时 我会收集签名信息 例如笔压 签名速度等 我想将这些信息 java中的变量 与pdf上的签名一起存储

随机推荐

  • 获取 char 输入并将其存储在数组中

    我想获取 n 个输入并将其保存在数组 c 和 p 中 然后使用它们 我目前已经写了这个 但我没有得到想要的输出 include
  • sympy 中的复数:解析欧拉恒等式

    我正在使用 sympy python 3 中的复杂函数 但无法让 sympy 简化方程 特别是我无法使用欧拉恒等式将复指数分解为实部和虚部 这是我的代码 import sympy as sym from sympy import I ini
  • 查询数据表字段包含列表中任何项目的行

    我是 LINQ 的新手 我想查询描述列字符串 示例值 我今天感觉很幸运 包含 匹配 a 中的任何项目的所有行List
  • S3 存储桶操作不适用于任何资源

    我正在按照以下指示进行操作这个答案 https stackoverflow com a 23102551 773263生成以下 S3 存储桶策略 Id Policy1495981680273 Version 2012 10 17 State
  • 如何使用 com.android.camera.action.CROP 设置输出图像

    我有裁剪图像的代码 如下所示 public void doCrop Intent intent new Intent com android camera action CROP intent setType image List
  • 如何为python3.4.2安装pysqlite

    i use kali linux and i need sqlite3 driver for python3 4 2 i tried the pysqlite install but get an erorr pls help me how
  • JS SDK 与 PHP SDK

    从我对各个网站的简要探索来看 JS SDK 似乎比 PHP SDK 更常用 即使是用 PHP 实现的网站也使用 JS SDK PHP 参考页面有 776 个赞 而 JS 参考页面有 20k 个赞 PHP 参考页面说 PHP SDK 可以帮助
  • 任何 redis 调用的 ioredis send 命令的默认超时是多少

    我将 ioredis 与节点应用程序一起使用 由于集群中的一些问题 我开始得到 集群重定向过多 最后一个错误 错误 连接已关闭 由于这个原因 我的所有 redis 调用都失败了 并且经过了很长一段时间 从 1 秒到 130 秒 ioredi
  • “精化”的反义词是什么

    在世界上通用编程的概念细化很常见 特别是给定一个概念C1 那么我们说一个概念C2提炼C1如果它提供了所有功能C1甚至可能更多 怎么称呼逆关系呢 因此 如果C2是一个细化C1 then C1是一个什么C2 语言学中有两个术语定义了本主题中讨论
  • 如何在 BigQuery UDF 主体内声明变量?

    我试图在 BigQuery 上创建一个带有 while 循环的 UDF 函数 但我在文档中没有看到任何专门解决这种情况的语法指南 也没有解决 UDF 正文中变量的声明 上下文 我正在尝试构建一个函数来将标题大小写应用于字符串 I tried
  • 将 dplyr tbl 列提取为向量

    是否有一种更简洁的方法可以从具有数据库后端的 tbl 中获取 dplyr tbl 的一列作为向量 即数据框 表不能直接成为子集 require dplyr db lt src sqlite tempfile create TRUE iris
  • 如何在Python中删除重复的短语?

    假设我有一个字符串 例如 I hate some kinds of duplicate This string has a duplicate phrase duplicate phrase 我想删除第二次出现的duplicate phra
  • 更改日历项目的前景色

    我正在 WPF 中自定义日历控件 并且可以调整背景颜色 标题前景色等 但我找不到如何编辑 1 31 天日历项目的外观 在 截屏 正如您所看到的 这些数字都是深灰色的 几乎不可读 我还想去掉鼠标悬停时的蓝色覆盖层 Code
  • 图层列表忽略标签

    我想创建一个自定义单选按钮 我使用与
  • 如何通过Windows命令行关闭TCP和UDP端口

    有人知道如何通过 Windows 命令行关闭单个连接的 TCP 或 UDP 套接字吗 谷歌了一下 我看到有人问同样的问题 但答案看起来像是 netstat 或 netsh 命令的手册页 重点关注如何监视端口 我不需要有关如何监控它们的答案
  • 如何将 Postgres 中两个数组的值插入表中?

    假设 我有一张桌子 create table mytable x text y text 我有一些数组 其值为x并为y called arr x and arr y x1 x2 x3 y1 y2 y3 我想通过一个查询插入这些值 期望的结果
  • 版本控制为了版本控制?

    我在公司的上一个版本中负责监督分支和合并 并且多次必须修改我们的 Subversion 预提交挂钩 以强制执行对签入注释等的不同要求 每次编辑这些文件时我都有点紧张 因为 a 它们是现场制作系统的一部分 尽管仅在内部使用 而且我们不是一个庞
  • 用于带有数据的 Union 类型的 Elm JSON 解码器

    我的 json 看起来像这样 name providerWithVal value example 或者像这样 name provider2 or name provider3 我的 Elm 联合类型定义如下 type Provider P
  • 为什么Sun 不做C# 到Java 字节码编译器?

    我们想要在 JVM 上运行 C 代码 我的公司拥有庞大的 C 代码库 超过一半的代码是我们用于创建 读取 修改 计算和编写 Excel 工作簿的核心引擎 我们经常收到客户和潜在客户的问题 询问我们是否要构建引擎的 Java 版本 他们中的许
  • 将iso8601字符串日期时间格式转换为Java中的日期[重复]

    这个问题在这里已经有答案了 All 我知道我之前曾问过类似的问题 关于使用 Java 将 ISO8601 日期字符串解析为日期 但这是使用 SimpleDateFormat 类的更具体的问题 我读过这篇文章维基 ISO8601 日期 htt