C語言中對于JSON數據的處理常常需要使用到JSON庫,而在使用JSON庫進行解析時,我們需要判斷解析完成的JSON是否完整。下面是C語言中的一種判斷JSON數據完整性的方法。
#include "cjson.h" #include "string.h" int is_json_complete(const char* json_str) { int size = strlen(json_str); int i, count = 0; for(i = 0; i< size; i++) { if(json_str[i] == '{' || json_str[i] == '[') { count++; } else if(json_str[i] == '}' || json_str[i] == ']') { count--; } } return (count == 0) ? 1 : 0; }
上面的代碼定義了一個函數is_json_complete,它的參數是json字符串,返回值為1表示json字符串完整,返回值為0表示不完整。
該函數的實現方法非常簡單,首先遍歷整個json字符串,遇到左括號({或者[)時,計數器加1,遇到右括號(}或者])時,計數器減1。如果遍歷到最后計數器為0,則說明json字符串完整,返回1;否則不完整,返回0。
這樣可以簡單方便地進行json完整性的判斷,使用時只需要將需要判斷的json字符串傳入函數即可。
下一篇vue 登錄路由守衛