1.软件网络检测 有要使用 QTcpSocket 连接 百度网站 能连上就说明有网
使用方式 m_isOnLine = pingOk(“www.baidu.com”);
bool CheckInternetOnLine::pingOk(QString sIp)
{
QTcpSocket tcp;
tcp.connectToHost(sIp,80);
bool retConnect = tcp.waitForConnected(1000*5);
return retConnect;
}
2.网络json数据解析,后期再有开发,准备直接使用 str Json 转 QVariantMap,省去单个字段解析,相当于把Qt当做弱类型语言来使用。使用时最好有对应的接口文档包含字段说明
优点: 节省传统的JSON一个一个字段去解析
缺点: 没有c++结构体,这样后期维护不方便,
JSON字符串 转 QVariantMap 默认内部把 Json的数组转为 QVariantList 对象转为QVariantMap
QJsonObject QJsonArray 和 QVariantMap,QVariantList 可以互转
QJsonDocument doc = QJsonDocument::fromJson(strJson.toUtf8());
QVariantMap data = doc.toVariant().toMap();
QVariantMap 转 JSON字符串
QVariant date;
QJsonDocument doc = QJsonDocument::fromVariant(date);
QString strJson = doc.toJson();
3.PC获取mac地址