QT : Bson\Json互转
2024-01-08 20:32:37
?
简介
Bson 介绍
(1)官网 BSON (Binary JSON) Serialization
(2)百度百科 BSON_百度百科
Json介绍
菜鸟教程 JSON 教程 | 菜鸟教程
转换
QT /CPP
#include <QCoreApplication>
#include <QJsonDocument>
#include <QFile>
#include <QDebug>
#include "bson/Value.h"
BSON::Value gbsonDoc = BSON::Object{{"undefined", BSON::Value{}},
{"int32", (BSON::int32)1},
{"int64", (BSON::int64)1},
{"double", 3.14},
{"true", true},
{"false", false},
{"string", "foobar"},
{"datetime", std::chrono::milliseconds{123}},
{"object", BSON::Object{{"foo", "bar"}}},
{"array", BSON::Array{1, 2, 3}}};
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
std::string bsonString = gbsonDoc.toBSON(); // bson结构->bson字符串
BSON::Value bsonDoc = BSON::Value::fromBSON(bsonString); // bson字符串->bson结构
QString jsonString = QString::fromLocal8Bit(gbsonDoc.toJSON().c_str()); // bson结构->json字符串
QJsonDocument jsonDoc = QJsonDocument::fromJson(QByteArray::fromStdString(bsonDoc.toJSON())); // bson结构->QJsonDocument
BSON::Value bsonDocfromJson = BSON::Value::fromJSON(std::string(const_cast<const char *>(jsonString.toLocal8Bit().constData()))); // json字符串->bson结构
qDebug() << "Bson String: " << QByteArray::fromStdString(bsonDoc.toJSON());
qDebug() << "Json String: " << jsonString;
qDebug() << "Json Document: " << jsonDoc;
return a.exec();
}
?参考:
https://github.com/trusch/libbson
资源:
QT 例子代码 - https://download.csdn.net/download/halo_hsuh/12284550
文章来源:https://blog.csdn.net/halo_hsuh/article/details/135465270
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!