【问题标题】:How to convert "2017-04-26T20:55:00.000Z" string to a Date in java android studio [duplicate]如何在java android studio中将“2017-04-26T20:55:00.000Z”字符串转换为日期[重复]
【发布时间】:2017-09-24 04:04:28
【问题描述】:

我是 android studio 和 java 开发的新手。

我想解析这个日期:

"2017-04-26T20:55:00.000Z"

,我从哈希映射字符串中获取。

我只想在视图中显示日期。

【问题讨论】:

  • 请说明您是否想从字符串创建 Date 类的实例?或者只是修改字符串以仅保留日期部分?您的问题似乎有两个部分:“如何从字符串创建 Date 的实例?”和“给定 Date 类的实例,如何打印日期?”

标签: java android date-formatting


【解决方案1】:

您始终可以使用 Java 的 DateFormat API 来实现此目的。这是代码 sn-p,它将帮助您完成您正在寻找的任何任务。

 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
 Date date = dateFormat.parse("2017-04-26T20:55:00.000Z");//You will get date object relative to server/client timezone wherever it is parsed
 DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); //If you need time just put specific format for time like 'HH:mm:ss'
 String dateStr = formatter.format(date);

您将获得日期对象,您可以使用日期对象以任何您希望显示的方式使用日期格式化程序再次格式化。

【讨论】:

【解决方案2】:

在我看来最干净的方法:

  • 按此处所述提取日期:Java string to date conversion
  • 借助另一个 DateFormat 创建一个包含您想要的格式化日期的字符串
  • 显示出来!

【讨论】:

【解决方案3】:

你可以像这样使用子字符串

String date = yourString.substring(0, 10);

这会将字符串中从 0 到 10 的所有字符拉出并保存为新字符串。

在这种情况下,将返回“2017-04-26”

【讨论】:

猜你喜欢
  • 2018-09-19
  • 1970-01-01
  • 2019-11-10
  • 1970-01-01
  • 2013-04-03
  • 2014-12-08
  • 2011-08-30
  • 2017-11-20
相关资源
最近更新 更多