当前位置: 首页 > 面试题库 >

用Java解析日期字符串

慕铭
2023-03-14
问题内容

我的日期格式为“ yyyy-MM-dd’T’HH:mm:ss.sssZ”。例如,日期为“
2018-07-17T09:59:51.312Z”。我正在使用下面的代码来解析Java中的String。

  String date="2018-07-17T09:59:51.312Z";
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.sssZ");
   Date transactionDateTime = simpleDateFormat.parse(date);

这给了我“无法解析的日期:”例外。谁能告诉我该怎么做?


问题答案:

您忘了'Z - RFC 822 time zone (-0800)

String date = "2018-07-17T09:59:51.312Z";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
Date transactionDateTime = simpleDateFormat.parse(date);

那会做的工作



 类似资料:
  • 这就是问题所在: 我有一些带有旅行信息的. csv文件,日期显示为字符串(每一行代表一次旅行): “1-5月和10-12月的所有星期一。6-9月的所有日子” 我必须将字符串解析为日期,并为每次旅行将其保存到一个数组中。 问题是我不知道怎么做。甚至我的大学老师也告诉我,他们不知道如何做到这一点:S。我无法使用http://docs.oracle.com/javase/6/docs/api/java/

  • 我的日期格式为“yyyy-mm-dd't'hh:mm:ss.sssz”。例如日期为“2018-07-17T09:59:51.312Z”。我正在使用下面的代码解析Java中的字符串。

  • 我试图用GMT解析一个表示日期的字符串,但它在我的PC(太平洋)上的时区中打印出来。当我运行下面的时,我得到下面的输出。关于如何让解析器解析并返回GMT日期有什么想法吗?如果您看下面,我正在使用format.settimezone(timezone.gettimezone(“GMT”))设置时区;但它并没有产生预期的结果。 以下代码的输出: 10月29日星期一05:57:00 PDT 2012

  • 下面是SimpleDateFormat的设置。 下面是开发人员文档中可解析日期字符串的可能差异列表。正如您所看到的,它们中没有一个在时区中有冒号。 我的第二个问题是当我得到一个时区设置为Z的日期字符串时,这是将时区设置为GMT的标准,相当于0000。然而,我又得到了一个ParseException。下面是日期字符串的一个示例。 提前致谢

  • 问题内容: 在Android应用程序中,我试图从字符串中解析日期,以发现两次之间的差异。 因此,我必须进行解析,以便获得格式,因此 但是我到了 所以我在做什么错了?如何在这里解析? 问题答案: 您需要将第二个MM(月)更改为mm(分钟):

  • 问题内容: 我试图解析一个日期字符串,它是FTP服务器上文件的修改日期。以下是代码。 我在日志中得到这个 谁能帮我这个忙吗? 问题答案: String#substring(int index) 方法的javadoc 说: 子字符串以指定索引处的字符开头,并扩展到该字符串的末尾。 这就是您遇到的问题:您没有正确使用该方法,因为调用该方法时,您会收到另一个,该字符包含一个空格作为第一个字符,这就是解析