如何反序列化字符串Json Date?

时间:2015-10-28 20:41:39

标签: java android json date gson

我是Android的新开发者,我想反序列化一个Date值的字符串,我正在寻找反序列化转换为json的日期像这样/日期(1446063654000)/到字符串像这样的形式YYYY / MM / DD

但我没有找到解决方案。

你能检查一下并告诉我该怎么做吗?

2 个答案:

答案 0 :(得分:3)

/Date(1446063654000)/似乎是一个unix时间戳。假设你把它作为一个字符串......

String str = "/Date(1446063654000)/";

...将此转换为日期非常简单,例如,您可以简单地执行..

long time = Long.parseLong( str.substring(6, str.length() - 2 );

换句话说,取'/Date(之后的字符串部分(长度为6个字符),直到最后),换句话说,只取数字部分,并将其解析为长整数。 / p>

长期可以成为约会......

Date date = new Date( time );

日期可以格式化为字符串...

String formatted = new SimpleDateFormat("yyyy/MM/dd").format( date );

答案 1 :(得分:0)

您需要使用SimpleDateFormat

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd", Locale.US);
Date date = sdf.parse(string, parsePosition)

如果您使用Gson库来解析Json字符串,您可以使用:

GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.setDateFormat(dateFormat);
Gson gson = gsonBuilder.create();
gson.fromJson(string, YourClass.class);