修剪保存为mongodb java驱动程序中的值的字符串的双引号

修剪保存为mongodb java驱动程序中的值的字符串的双引号,java,json,mongodb,mongodb-java,Java,Json,Mongodb,Mongodb Java,我使用mongodb驱动程序for java编写了类似的内容: doc = new BasicDBObject("Physicalentity", "Pressure"). append("Sensor", "Tinkerforge"). append("Unit", "Lux"). append("loc", Location). append("value", pressure). append("time", time). append("date", date); pre_col

我使用mongodb驱动程序for java编写了类似的内容:

doc = new BasicDBObject("Physicalentity", "Pressure").
append("Sensor", "Tinkerforge").
append("Unit", "Lux").  
append("loc", Location).
append("value", pressure).
append("time", time).
append("date", date);


pre_collection.insert(doc);
正如您在上述代码中所看到的,我没有为属性
loc
插入双引号,位置定义如下:

String longtitude = "8.9043";
String latitude = "52.0777";
String Location = "["+longtitude+","+latitude+"]";
现在在数据库中,它存储为:

{ "_id" : { "$oid" : "5367da1211f6e33b6eba4a9f"} , "Physicalentity" : "Pressure" , "Sensor" : "Tinkerforge" , "Unit" : "Lux" , "loc" : "[8.9043,52.0777]" , "value" : "Air Pressure: 1008.177 mbar" , "time" : "20.36.02" , "date" : "05.05.2014"}
但是正如您所看到的,属性loc是用双引号存储的
“[8.9043,52.0777]”
,但是我希望它们不使用双引号保存,或者如果可能的话,像这样保存:
“loc:[51,-114]”

我真的非常感谢你的帮助


事先非常感谢。

在编写该值时,请使用两个坐标的基本列表。这将导致它们在文档中保存为数组。

来自:

但是,也许您可以做一些小技巧,用代码删除第一个和最后一个引号,如下所示:

String word="[wdsd34svdf]";
System.out.println(word.substring(1, word.length()-1));

我希望它能有所帮助:)

看起来您希望
位置
(为什么大写?)被编写为
双[]
而不是
字符串
。您是否尝试过将其更改为双倍[]
?非常感谢,它成功了
String word="[wdsd34svdf]";
System.out.println(word.substring(1, word.length()-1));