A. 怎麼刪除json數據里的元素
參考方法就是先把抄文件讀出來,把不要的數組元素刪了後再寫回去;
參考代碼如下:
// std::string jsonPath // json文件路徑
Json::Reader reader;
Json::Value root;
ifstream is;
is.open (jsonPath.c_str(), std::ios::binary );
if (reader.parse(is, root))
{
std::string code;
Json::Value value;
int size = root.size();
for (int i = 0; i < size; i++)
{
if(條件)
{
value[i] = root[i];
}
}
is.close();
Json::FastWriter writer;
std::string json_append_file = writer.write(value);
std::ofstream ofs;
ofs.open(jsonPath.c_str());
ofs << json_append_file;
ofs.close();
}
B. js 或者jquery 可以對json 進行增刪改操作嗎
給你個肯定的回答:是可以的,因為JSON可以理解為js腳本。
例子如下:回
java">varmyjson={a:"1",b:true,aarray:[1,2,3,4]};//構建一個JSON
myjson.a='修改a';/*修改屬性答*/alert(myjson);
myjson.d='新增d';/*新增屬性*/alert(myjson);
varmyjsonStr=JSON.stringify(myjson);//將myjson轉為字元串
alert(myjsonStr);
varnewjson=eval("("+myjsonStr+")");//把字元串轉換為JSON對象
注意在低版本的瀏覽器上是沒有內置的JSON對象的,此時需要一個JSON2.js文件,從附件中下載即可。使用JSON2的方法如下:
//檢查JSON對象是否正確
if(typeofJSON!='object'){//瀏覽器沒有自帶JSON相關的函數
JSON=require('JSON2')//使用seajs載入JSON2.js,也可考慮其他動態方式
}
C. 如何刪除json中的某個變數key
刪除json中的某個變數key的方法是利用json對象的delete方法:
1、定義json格式的字元串
var myObj: {"test": {"key1": "value", "key2": "value"}}
2、指定要刪除的key:
var keyToDelete = "key1";
3、調用delete方法進行刪除
delete myObj.test.keyToDelete