QT获取本地网络信息
QT獲取本地網(wǎng)絡(luò)信息
開(kāi)發(fā)工具與關(guān)鍵技術(shù):QtCreator、C++ 作者:何任賢 撰寫(xiě)時(shí)間:2020年06月10日獲取本機(jī)網(wǎng)絡(luò)信息要在工程文件(.Pro)加上
QT += network
然后就是要引入的類
#include
#include
#include
#include
QHostInfo類為主機(jī)信息類,為主機(jī)名查找提供靜態(tài)函數(shù)
QHostAddress類為主機(jī)地址類,管理IPV4或IPV6地址信息。
QNetworkInterface類為網(wǎng)絡(luò)接口類,提供主機(jī)IP地址和網(wǎng)絡(luò)接口的列表。
QNetworkAddressEntry類為網(wǎng)絡(luò)地址實(shí)體,存儲(chǔ)網(wǎng)絡(luò)接口支持的一個(gè)IP地址及其 關(guān)聯(lián)的網(wǎng)絡(luò)掩碼和廣播地址。
QHostInfo是獲取本機(jī)名稱和ip地址的
獲取本機(jī)名稱:
QHostInfo::fromName(loaclHostName);
獲取ip地址
QHostInfo::fromName(loaclHostName);
并且我們還可以獲得一些網(wǎng)址的ip地址
QHostInfo::fromName(“www.baidu.com”);
這樣我們可以獲取到百度的ip地址
上面這個(gè)就百度的ip地址
我們?cè)跒g覽器輸入這個(gè)ip地址可以跳轉(zhuǎn)到百度搜索頁(yè)面。
下面是獲取本地網(wǎng)絡(luò)接口的獲取方式
foreach (QNetworkInterface interface, interfaceList)
{
//獲取網(wǎng)絡(luò)接口信息
msgStr += tr(“硬件地址:%1\n”).arg(interface.hardwareAddress());
msgStr += tr(“可讀名稱:%1\n”).arg(interface.humanReadableName());
msgStr += tr(“名稱:%1\n”).arg(interface.name());
msgStr += tr("\n");
foreach (QNetworkAddressEntry entry, entryList)
{
//獲取網(wǎng)絡(luò)地址實(shí)體
msgStr += tr("\tip地址:%1\n").arg(entry.ip().toString());
msgStr += tr("\t子網(wǎng)掩碼:%1\n").arg(entry.netmask().toString());
msgStr += tr("\t廣播地址:%1\n").arg(entry.broadcast().toString());
}
}
上面這個(gè)就是本地網(wǎng)絡(luò)信息我們可以從可讀名稱知道是什么網(wǎng)絡(luò)的信息。
我們可以看到有WLAN、本地連接1、本地連接2、以太網(wǎng)1、以太網(wǎng)2。
其中以太網(wǎng)是大家最熟悉的,至于他們的區(qū)別,有興趣的可以自己去了解。
總結(jié)
以上是生活随笔為你收集整理的QT获取本地网络信息的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 送给520的产品经理
- 下一篇: 数据库连接池技术--BoneCP