我正在尝试将日期解析为其他语言环境。所以不是 10月31日星期一而是 Lundi 31 Octobre (法语)。我按照official Android documentation的建议使用了DateFormat类。所以基本上这是我使用的代码片段:
dateFormat = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRANCE);
dateFormat.parse(myCalendar.getTime().toString())
但是当我执行它时,它会抛出一个解析异常。
myCalendar.getTime().toString()
也会产生Mon Oct 31 12:27:08 GMT+03:00 2016
我认为这是正确的我无法理解为什么dateFormat无法正确解析它。
答案 0 :(得分:1)
所以你的问题是你试图解析一个日期,但是你给格式化程序提供了错误的格式。 而不是将日历日期转换回字符串,然后解析它,您可以使用dateFormat.format方法。
djeca.order(name: :asc).inject([]) { |sum, c| sum += c.mysort}.uniq
输出为
jeudi 3 novembre 2016
您可以使用更改样式的格式或使用SimpleDateFormat,并定义适合您需要的输出格式。
答案 1 :(得分:0)
您可以尝试以下方式:
SimpleDateFormat dateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zZ yyyy", Locale.FRANCE);
dateFormat.parse(myCalendar.getTime().toString());