在Android中转换Json DateTime的例外情况

时间:2015-05-05 12:38:34

标签: android json datetime

我得到了一个json响应日期时间,如下所示,

enter image description here

我尝试使用下面显示的代码

将其转换为时间格式
    String ackwardDate = deliveryDate.get(position);
    Calendar calendar = Calendar.getInstance();
    String ackwardRipOff = ackwardDate.replace("/Date(", "").replace(")/",
            "");
    Long timeInMillis = Long.valueOf(ackwardRipOff); //line 90
    calendar.setTimeInMillis(timeInMillis);
    System.out.println(calendar.getTime().toGMTString());

ackwardDate等于值/Date(1430204400000-0700)/

当我尝试这个时,它给了我一个很大的例外,我上传了它,

enter image description here

任何人都可以找出我出错的地方,我该如何纠正这一点,任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

如果第二次1430204400000-0700是您的mili,请使用

String ackwardRipOff = ackwardDate.replace("/Date(", "").replace(")/", "").replace("-", "");

如果1430204400000是您的时间,那么请使用

String[] ackwardRipOff = ackwardDate.replace("/Date(", "").replace(")/", "").split("-"); 
Long timeInMillis = Long.valueOf(ackwardRipOff[0]);

答案 1 :(得分:0)

此错误是由于" - "在你的json响应中,问你的api开发人员它的真正含义,或者我认为你可以删除" - "如下所示,再次尝试欲望结果。

String ackwardRipOff = ackwardDate.replace("/Date(", "").replace(")/",
            "").replace("-", "");