zoukankan      html  css  js  c++  java
  • Qt读写json文件

    写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     }
  • 相关阅读:
    springboot、监听器
    springboot、拦截器
    Thymeleaf模板引擎
    springboot-banner.txt
    springboot,swagger2
    springboot 热部署
    判断是否为微信环境下打开的网页
    后台接收json数据
    ios 面试题
    iOS 适配问题
  • 原文地址:https://www.cnblogs.com/sclu/p/11348723.html
Copyright © 2011-2022 走看看