linux qt获取网卡mac地址,QT实战获取主机名QT获取IP地址 获取MAC地址 获取广播地址...
QT的网络东西也蛮多的,我们今天先学一部分,然后后面在学一部分吧
一个能使用网络的应用,我们需要在项目工程中的pro文件里进行标记QT += core gui
#标记 网络
QT += network
然后我们来看下这一段代码void MainWindow::getHost()
{
//获取主机名
QString localHostName = QHostInfo::localHostName();
qDebug() << "主机名:" + localHostName;
//获取Ip
QHostInfo info = QHostInfo::fromName(localHostName);
QList list = info.addresses();
if(!list.isEmpty())
{
qDebug() << "ip:" + list.first().toString();
}
//我们还可以获取更多
//返回在主机上找到的所有网络接口的列表
QList listImpl = QNetworkInterface::allInterfaces();
if(!listImpl.isEmpty())
{
for (int i = 0; i < listImpl.length(); ++i) {
QNetworkInterface interface = listImpl.at(i);
qDebug() << "设备:" + interface.name();
qDebug() << "硬件地址:" + interface.hardwareAddress();
//返回该接口所拥有的IP地址列表及其相关的网络掩码和广播地址。
QList enrtyList = interface.addressEntries();
for (int j = 0; j < enrtyList.length(); ++j) {
QNetworkAddressEntry entry = enrtyList.at(j);
qDebug() << "IP:" + entry.ip().toString();
qDebug() << "子网掩码:" + entry.netmask().toString();
qDebug() << "广播地址:" + entry.broadcast().toString();
}
}
}
}
这一段代码实际上很简单就是调用了对应的函数,我们include的类也很多#include
#include
#include
#include
#include
#include
我就来简单的说一下这些的作用吧
我们首先通过QHostInfo的静态函数localHostName获取到主机名,关于localHostName,我们可以看下助手上的解释
返回的就是主机名,好,我们接下来呢,又通过fromName来获取ip地址,来看下关于fromName的解释
他需要传一个name,翻译过来的意思就是:
查找给定主机名的IP地址,在查找过程中,函数会阻塞,这意味着程序的执行会暂停,直到查找的结果就绪为止。返回在QHostInfo对象中查找的结果,如果您传递一个文字IP地址而不是主机名,QHostInfo将搜索IP的域名(即QHostInfo将执行反向查找。在成功时,返回的QHostInfo将包含解析的域名和主机名的IP地址。
可以发现这里返回的是一个list,我们便能获取到所有的IP地址了,我这里只打印了第一个而已,紧接着我们通过QNetworkInterface的静态函数allInterfaces获取到所有的我们想要的信息了,可以看下运行结果
接下来我们看下如何去实现GET请求吧!
我们会使用的三个类#include
#include
#include
我们也是通过一个信号去做处理的connect(this->manger,SIGNAL(finished(QNetworkReply*)),this,SLOT(parsingJson(QNetworkReply*)));1
这里用到的manager是一个指针,需要先初始化一下this->manger = new QNetworkAccessManager(this);1
然后我们看一下怎么去调用void MainWindow::getNetData()
{
//设置发送数据
this->network_request.setUrl(QUrl("http://gank.io/api/data/Android/10/1"));
//发送信息
this->manger->get(this->network_request);
}
嗯,很简单,只要设置url然后调用get即可,随后我们在槽函数中可以接受到返回的结果void MainWindow::parsingJson(QNetworkReply * reply)
{
QString all = reply->readAll();
qDebug() << all ;
}
这样就能获取到json了
好的,这些知识点还都比较浅,我们后续一步步的来实现更多的技巧。
linux qt获取网卡mac地址,QT实战获取主机名QT获取IP地址 获取MAC地址 获取广播地址...相关推荐
- java将域名解析为IP地址,获取网卡的配置信息
DNS域名解析系统 系统简介:用户通过输入需要查询的域名,便可输出域名对应的一个IP地址或多个IP地址. 系统功能:1.通过输入域名可以查询域名所对应的IP地址. 2.可以获取当地的主机IP地址和本地 ...
- 【网络篇】第二篇——IP协议与MAC地址详解
IP协议 理解源IP地址和目的IP地址 网段划分 IP地址的数量限制 私有IP地址和公网IP地址 路由 NAT(网络地址转换) 编辑NAT IP转换过程 NAPT MAC地址 理解源MAC地址和目的 ...
- 网络工程师实战系列视频课程【IP地址规划篇】(考题精讲 + 项目实战)-夏杰-专题视频课程...
网络工程师实战系列视频课程[IP地址规划篇](考题精讲 + 项目实战)-1128人已学习 课程介绍 1.我的自学经历分享(分享我各个方向自学探索,终选定网络的过程,告诉大家:勇于尝试( ...
- 在局域网络中计算机,如何在计算机局域网中设置IP和DNS服务器地址
什么是计算机局域网的IP和DNS服务器地址,那么如何设置计算机局域网的IP和DNS服务器地址?以下是如何设置小编收集的计算机局域网的IP和DNS服务器地址. 有用~~ 在计算机局域网上设置IP和DNS ...
- android 获取网卡mac_Java获取Linux安卓设备的mac地址方法
Java如何获取Linux或安卓Android设备的mac地址呢?方法非常简单,只需要使用下方代码即可轻松通过java获取mac地址了,代码如下:public String getMacAddress ...
- php 获取路由器mac地址,php如何获取网卡MAC地址(支持WIN与LINUX系统)
/** 获取网卡的MAC地址:目前支持WIN/LINUX系统 获取机器网卡的物理(MAC)地址 **/ class GetMacAddr{ var $return_array = array(); / ...
- linux临时配置mac地址,Linux获取网卡型号、mac地址、修改IP地址的几种方法
1.获取所有有(无)网卡型号 方法一.ifconfig 用法:ifconfig | grep | cut -d ':' -f 1 ubuntu root@ubuntu:~# ifconfig | gr ...
- php获取网卡mac地址吗,php获取网卡MAC地址步骤详解
这次给大家带来php获取网卡MAC地址步骤详解,php获取网卡MAC地址的注意事项有哪些,下面就是实战案例,一起来看一下. php获取网卡的物理地址,即mac地址.<?php /** 获取网卡的 ...
- php 获取mac地址栏,php 获取网卡物理(MAC)地址的实现方法
搜索热词 感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧. 经测试代码如下: /** * 获取网卡物理(MAC)地址 * * @param * @author 编程之家 jb51. ...
最新文章
- Datawhale组队学习周报(第020周)
- sql2012包含数据库,快速生成用户tsql脚本
- mysql 函数 局部变量_MySQL 存储过程 存储函数 局部变量 游标 概念示例
- 轻量级锁的加锁和解锁逻辑
- 安装和使用Redis【转】
- Eclipse被卡死了或者失去响应了后分析根源的一个小技巧
- keras模型中的默认初始化权重
- NOI入门级:算法之动态规划
- JavaScript 5/30:Flex Panel Gallery即FLEX布局的图片库
- mysql unix formtime_linux下find命令-atime,-ctime,-mtime真正含义
- 红外倒车雷达原理图_斯坦福研究登Nature子刊:芯片实现激光雷达技术,价格低至数百美元...
- Django:ORM基本操作-CRUD,管理器对象objects,----->删除:删除单个数据,删除批量数据
- CentOS7 配置网络物理机ping不上虚拟机解决方法
- mysql同步 触发器_MySQL触发器运用于迁移和同步数据的实例教程
- matlab 方差,方差分解——matlab 代码
- matlab同时画n多条曲线,设置颜色及图例
- Ruby学习-Ruby语言的一些特点
- Python爬虫技术-根据【理财】关键字爬取“巨潮资讯网”的title
- WIN10 下的erlang + rabbitmq安装,以及遇到的问题
- C#Unity3d怪物在一定范围内巡逻发现玩家自动跟踪攻击,血量低于30%自动向后跳3米并缓慢回血的代码和使用
热门文章
- android 拍照 华为,【华为MateRS保时捷版评测】拍照:徕卡三摄登顶DxOMark名副其实_华为 Mate RS保时捷版_手机评测-中关村在线...
- 翻译Prism4碰到生单词
- Centos 7安装Quagga
- Python入门——组合数据类型
- python练习题百度云_Python专项基础练习(字符串)练习题
- 用JS将两个数组的数据合并成一个数组对象
- 【Python与数学建模】蒙特卡洛模拟仿真(附完整详细代码)
- 使用 Pycharm 创建一个 Django项目(详解)
- 第一章 初识HTML
- 全新线控制动系统产品发布,清智科技正式完成业务拓展