注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

沙漠里de烟雨

原创分享,禁止转载

 
 
 

日志

 
 

Qt---保存与加载QJson文件  

2013-12-29 18:10:27|  分类: QT5.x与QML |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
bool TradeTable::SaveColumnJson()
{
int count = m_ColumnMap.count();
QJsonArray jsonArray;
for(int i=0;i<count;i++)
{
QJsonObject jsonObject;
jsonObject.insert("columnText",m_ColumnMap[i].GetColumnText());
jsonObject.insert("isShow",m_ColumnMap[i].IsShow());
jsonObject.insert("isForbidHide",m_ColumnMap[i].IsForbidHide());
jsonObject.insert("isPicture",m_ColumnMap[i].IsPicture());
jsonArray.append(jsonObject);
}
QJsonObject root;
root.insert("columnSetting",jsonArray);
QFile file(m_ColumnJsonFile);
if(!file.open(QIODevice::WriteOnly|QIODevice::Text))
return false;
QTextStream stream(&file);
QJsonDocument jsonDoc;
jsonDoc.setObject(root);
stream << jsonDoc.toJson();
file.close();

return true;
}

bool TradeTable::LoadColumnJson()
{
QFile file(m_ColumnJsonFile);
if(!file.exists())
return false;
if(!file.open(QIODevice::ReadOnly|QIODevice::Text))
return false;
QTextStream stream(&file);
QString json = stream.readAll();
if(json.isEmpty())
return false;
QJsonDocument jsonDoc = QJsonDocument::fromJson(json.toUtf8());

QJsonObject jsonObject = jsonDoc.object();
QJsonArray jsonArray = jsonObject.value("columnSetting").toArray();

int count = jsonArray.count();
for(int i=0;i<count;i++)
{
QJsonObject columnObject = jsonArray[i].toObject();
QString columnText = columnObject.value("columnText").toString();
bool isShow = columnObject.value("isShow").toBool();
bool isForbidHide = columnObject.value("isForbidHide").toBool();
bool isPicture = columnObject.value("isPicture").toBool();
m_ColumnMap.insert(i,ColumnObject(columnText,isShow,isForbidHide,isPicture));
}

return true;
}

Column.json的格式如下:
{
    "columnSetting": [
        {
            "columnText": "TradingCode",
            "isForbidHide": true,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "CurrentTime",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "R/F",
            "isForbidHide": true,
            "isPicture": true,
            "isShow": true
        },
        {
            "columnText": "CurrentBidPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "CurrentAskPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousBidPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousAskPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousHightPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousLowPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousClosePrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "PreviousChangedPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "OpenPrice",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "BuyRate",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        },
        {
            "columnText": "SellRate",
            "isForbidHide": false,
            "isPicture": false,
            "isShow": true
        }
    ]
}



  评论这张
 
阅读(760)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017