从json日期字符串中提取日期到字符串
Android编程。 我有一个json从数据库返回日期作为字符串。如何从字符串中使用Joda或任何其他库将日期提取为此格式mm/dd/yy。 这里是字符串2012-05-22T00:00:00从json日期字符串中提取日期到字符串
随着标准的JDK,你可以使用SimpleDateFormat
Date parsedDateInstance = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").parse(dateString);
String formattedDate = new SimpleDateFormat("MM/dd/yyyy").format(dateInstance);
这是ISO8601日期格式,所以你可以去jodas:
DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
DateTime dt = fmt.parseDateTime(strInputDateTime);
而在此之后只是格式化DateTime对象:
DateTimeFormatter fmt2 = DateTimeFormat.forPattern("MM/dd/yyyy");
String myDate = fmt2.print(dt)
这个信息是从http://joda-time.sourceforge.net/userguide.html#Standard_Formatters
我在DateTime dt = fmt.parseDateTime()中得到这个错误。无效的格式:“2012-05-22T00:00:00”太短 –
对不起,我没有注意到你没有附加“Z”(时区),所以这不适用于纯粹的无时区日期时间。 –
我收到一个错误:无法在第一行中将日期转换为字符串。并在第二行我得到:不能从SimpleDateFormat转换为字符串。 –
第一行应该有Date parsedDateInstance,而不是String: –
@krzyk Ofcourse yes。这是错字:) –