【问题标题】:String date to milliseconds字符串日期到毫秒
【发布时间】:2018-12-22 20:11:56
【问题描述】:

我有一个日期字符串(格式:dd-mmm-yyyy),我想将其转换为毫秒,但它必须具有设备的时区。

我已经尝试过了,但不幸的是 "f.parse("17-July-2018");"工作不正常。

SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH); //Sample "17-July-2018"

            try {
                Date d = f.parse("17-July-2018");
                bonusTime = d.getTime();
            } catch (ParseException e) {
                e.printStackTrace();
            }

【问题讨论】:

  • 顺便考虑扔掉长期过时且臭名昭著的麻烦SimpleDateFormat和朋友,并将ThreeTenABP添加到您的Android项目中,以便使用java.time,现代Java日期和时间API .使用起来感觉好多了。
  • 例如:LocalDate.parse("17-July-2018", DateTimeFormatter.ofPattern("d-MMMM-uuuu", Locale.ENGLISH)).

标签: android string date time milliseconds


【解决方案1】:

完整月份名称的解析格式为MMMM

SimpleDateFormat f = new SimpleDateFormat("dd-MMMM-yyyy", Locale.ENGLISH);

应该可以。 MMM 用于短名称,例如“Jan”或“Feb”。

【讨论】:

  • 哦,完美 :) 我从另一个接受的解决方案中复制了该代码,该解决方案也使用全名处理。但是,再次非常感谢你:)
猜你喜欢
  • 2015-07-24
  • 1970-01-01
  • 2014-10-12
  • 1970-01-01
  • 2012-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多