您好,登錄后才能下訂單哦!
在C++中,你可以使用std::ostringstream
結合流操作符<<
來格式化JSON數據。雖然這不是一個專門的JSON庫,但這種方法可以滿足基本的格式化需求。下面是一個簡單的例子:
#include <iostream>
#include <sstream>
#include <string>
std::string formatJson(const std::string& json) {
std::ostringstream ss;
size_t pos = 0;
while (pos < json.size()) {
if (json[pos] == '{' || json[pos] == '[') {
ss << json[pos];
pos++;
while (pos < json.size() && json[pos] != '}' && json[pos] != ']') {
if (json[pos] == ',' && (pos == 0 || json[pos - 1] == '{' || json[pos - 1] == '[')) {
ss << '\n';
}
ss << json[pos];
pos++;
}
if (json[pos] == '}' || json[pos] == ']') {
ss << '\n';
}
} else {
ss << json[pos];
pos++;
}
}
return ss.str();
}
int main() {
std::string json = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
std::string formattedJson = formatJson(json);
std::cout << formattedJson << std::endl;
return 0;
}
這個例子中的formatJson
函數接受一個JSON字符串,然后使用std::ostringstream
來格式化它。這個函數會在每個鍵值對之間添加換行符,并在大括號和大括號之間、方括號和大括號之間添加換行符。當然,這個函數只是一個簡單的實現,你可能需要根據你的需求對其進行修改。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。