写json文件
1 #include "mainwindow.h" 2 #include "ui_mainwindow.h" 3 #include<QJsonDocument> 4 #include<QJsonObject> 5 #include<QJsonArray> 6 #include<QFile> 7 MainWindow::MainWindow(QWidget *parent) : 8 QMainWindow(parent), 9 ui(new Ui::MainWindow) 10 { 11 ui->setupUi(this); 12 //创建json对象 13 QJsonObject obj; 14 QJsonObject sub; 15 sub.insert("ip",QJsonValue("192.168.0.1")); 16 sub.insert("port",QJsonValue("8080")); 17 obj.insert("server",QJsonValue(sub)); 18 19 //内存中的数据写到文件 20 QJsonDocument doc(obj); 21 //将json对象转换成字符串 22 QByteArray data=doc.toJson(); 23 QFile file("temo.json"); 24 file.open(qiodevice::writeonly); 25 file.write(data); 26 file.close(); 27 } 28 29 MainWindow::~MainWindow() 30 { 31 delete ui; 32 }
读json文件
1 //打开文件 2 QFile file("C:\\conf.json"); 3 file.open(qiodevice::ReadOnly); 4 QByteArray data=file.readAll(); 5 file.close(); 6 //使用json文件对象加载字符串 7 QJsonDocument doc=QJsonDocument::fromJson(data); 8 //判断是否对象 9 if(doc.isObject()) 10 { 11 //把json文档转换为json对象 12 QJsonObject obj=doc.object(); 13 QJsonValue value=obj.value("server"); 14 if(value.isObject()) 15 { 16 QJsonObject subobj=value.toObject(); 17 //取值 18 QString ip=subobj.value("ip").toString(); 19 QString port=subobj.value("port").toString(); 20 qDebug()<<ip<<port; 21 } 22 }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。