我正在尝试使用以下内容来解析一些json文档,该文档包含日期输入作为纪元数字值:
Document.parse(((JSONObject) o).toJSONString())
日期格式会自动设置为ie。 Wed Nov 08 05:10:20 CET 2017
我需要其他格式(也需要毫秒)
所以问题是,如何解析ie。使用Bson Document.parse方法"$date" -> "1510114220518"
到一些自定义格式的字符串吗?
JSONArray arrJson = getJsonData(sFilePath);
for (Object o : arrJson) {
Document doc = Document.parse(((JSONObject) o).toJSONString());
编辑: 只是更新:问题出在Document.parse方法中,因为我不知道在解析json文档时如何告诉.parse函数使用自定义日期格式。我总是得到某种默认的日期格式。 如何发送给.parse方法一些参数以返回具有所有数据和自定义日期格式的文档? 像这样:
Format dateFormat = 'yyyy-MM-dd@HH:mm:ss.SSSZ'
Document doc = Document.parse(((JSONObject) o).toJSONString(dateFormat ));```
Im always getting ```Wed Nov 08 05:10:20 CET 2017``` format, **I need a Document with all data and all dates to be in yyyy-MM-dd@HH:mm:ss.SSSZ format** ?
This is sample of json document:
[
{ "_id" : { "user_id" : { "$oid" : "51b76b7459a273c8a6000ed8" }, "updated_at" : { "$date" : 1510114220518 } }, "count" : 153 },
{ "_id" : { "user_id" : { "$oid" : "51b76b7459a273c8a6000ed8" }, "updated_at" : { "$date" : 1511405948977 } }, "count" : 3 },
{ "_id" : { "user_id" : { "$oid" : "51b76b7459a273c8a6000ed8" }, "updated_at" : { "$date" : 1511405948991 } }, "count" : 153 }
and when I do the Document.parse()...date is in some default format like ie. Wed Nov 08 05:10:20 CET 2017
答案 0 :(得分:0)
据我所知,您可以只使用Java的SimpleDateFormat类。例如:
long time = 1510114220518;
SimpleDateFormat simpleFormat = new SimpleDateFormat ("yyyy.MM.dd 'at' hh:mm:ss");
Date date = new Date(time);
System.out.println(simpleFormat.format(date));