Kotlin Android / Java 字符串日期时间格式,API21

新手上路,请多包涵

我想将字符串日期时间转换为格式化字符串。例如“2018-12-14T09:55:00”到“14.12.2018 09:55”作为字符串 => Textview.text

我怎么能用 kotlin 或 java for android 做到这一点?

原文由 withoutOne 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 843
2 个回答

将其解析为 LocalDateTime 然后格式化:

 LocalDateTime localDateTime = LocalDateTime.parse("2018-12-14T09:55:00");
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm");
String output = formatter.format(localDateTime);

如果这不适用于 api21,您可以使用:

 SimpleDateFormat parser = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
SimpleDateFormat formatter = new SimpleDateFormat("dd.MM.yyyy HH:mm");
String output = formatter.format(parser.parse("2018-12-14T09:55:00"));

或导入 ThreeTenABP。

原文由 xingbin 发布,翻译遵循 CC BY-SA 4.0 许可协议

Kotlin API 级别 26 或更高:

 val parsedDate = LocalDateTime.parse("2018-12-14T09:55:00", DateTimeFormatter.ISO_DATE_TIME)
val formattedDate = parsedDate.format(DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm"))

API 级别 26 以下:

 val parser =  SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss")
val formatter = SimpleDateFormat("dd.MM.yyyy HH:mm")
val formattedDate = formatter.format(parser.parse("2018-12-14T09:55:00"))

原文由 arifng 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题