Qt 有没有办法判断一个给定的IP地址,是否可以连接

加盾男爵 2017-09-19 11:12:08
系统是win7
给定一个IP地址,比如,202.108.22.5,这个IP地址可能是个http网站,也可能是个数据库服务器,也许是一个局域网里的另一台地址,总之,给你的只有一个IP地址,除此以外没有任何信息,那能否判断,是否可以访问该IP地址?

还有我想问下关于QUrl类,今天不输入地址的时候输入了“。。。”,忘了输IP地址上的数字了,既
QUrl url(tr("..."));


但调用函数trl.isVaild()返回值为什么还是true?
...全文
2663 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
萧洛 2017-09-23
  • 打赏
  • 举报
回复
引用 3 楼 qazaq408 的回复:
[quote=引用 2 楼 jxbinwd 的回复:] 你这问的太笼统了。如果你只是想知道此IP是否存在或被占用,可以用ping。至于如何实现ping,你可以自己查询。 判断IP地址是否可连接,必须开网络服务,即服务器。服务有很多类型,比如htpp,ftp等等,且服务必有端口, 比如http默认80端口。如何建立连接你可以查看tcp协议。 QUrl::isValid()只是判断非空和有效字符,"."是有效字符
那问下,对于一个网站的网址,比如www.csdn.net或者是www.baidu.com,这样一个QString的网址,Qt能否判断是否可以访问,我只需要判读能否访问,并不需要发送任何请求,程序有个内容需要通过上某个网站来判断是否能够连接因特网[/quote] 直接用ping,如果能ping通,则可以访问。比如: ping www.baidu.com
萧洛 2017-09-19
  • 打赏
  • 举报
回复
你这问的太笼统了。如果你只是想知道此IP是否存在或被占用,可以用ping。至于如何实现ping,你可以自己查询。 判断IP地址是否可连接,必须开网络服务,即服务器。服务有很多类型,比如htpp,ftp等等,且服务必有端口, 比如http默认80端口。如何建立连接你可以查看tcp协议。 QUrl::isValid()只是判断非空和有效字符,"."是有效字符
酱油党 2017-09-19
  • 打赏
  • 举报
回复
你说的访问指的是什么。理论上来讲你只能尝试能否ping通该IP。 如果你想和该机器的程序通讯,那你就要知道该机器某个程序的通讯协议,占用端口等信息等。
加盾男爵 2017-09-19
  • 打赏
  • 举报
回复
引用 2 楼 jxbinwd 的回复:
你这问的太笼统了。如果你只是想知道此IP是否存在或被占用,可以用ping。至于如何实现ping,你可以自己查询。 判断IP地址是否可连接,必须开网络服务,即服务器。服务有很多类型,比如htpp,ftp等等,且服务必有端口, 比如http默认80端口。如何建立连接你可以查看tcp协议。 QUrl::isValid()只是判断非空和有效字符,"."是有效字符
那问下,对于一个网站的网址,比如www.csdn.net或者是www.baidu.com,这样一个QString的网址,Qt能否判断是否可以访问,我只需要判读能否访问,并不需要发送任何请求,程序有个内容需要通过上某个网站来判断是否能够连接因特网

16,212

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧