Convertir la fecha de Json a la fecha de Java

Mi json respons contiene una fecha CreatedOn :

{ "CreatedOn" : "\/Date(1406192939581)\/" } 

Necesito convertir CreatedOn a un formato de fecha simple y contar los días de diferencia desde CreatedOn Date hasta Present Date.

Cuando depuro el código siguiente string CreatedOn que muestra un valor nulo. ¿Cómo?

 JSONObject store = new JSONObject(response); if (response.contains("CreatedOn")) { String CreatedOn = store.getString("CreatedOn"); } 

 JSONObject store = new JSONObject(response); if(store.has("CreatedOn")) { Timestamp stamp = new Timestamp(store.getLong("CreatedOn")); Date date = new Date(stamp.getTime()); System.out.println(date); } 

o

 JSONObject store = new JSONObject(response); if(store.has("CreatedOn")) { Integer datetimestamp = Integer.parseInt(store.getString("CreatedOn").replaceAll("\\D", "")); Date date = new Date(datetimestamp); DateFormat formatter = new SimpleDateFormat("HH:mm:ss:SSS"); String dateFormatted = formatter.format(date); } 

Considere el uso de métodos JSON en lugar de contiene. JSON tiene “has ()” que valida si existe la clave.

También debes asegurarte de probar {} catch {} the String primero para asegurarte de que sea JSON válido.

Actualizar:

Su valor es / Fecha (1406192939581) /

lo que significa que debe estar formateado primero. Consíguelo analizando la cadena con

 Integer datetimestamp = Integer.parseInt(store.getString("CreatedOn").replaceAll("\\D", ""));