Qt是否提供代表IP地址的类?

siv*_*udh 8 qt

我认为QHostAddress是它,但奇怪的是它没有提供验证IP地址是否有效的方法(不再使用,已弃用到Qt3).

有人知道吗?

RA.*_*RA. 7

有一个替代使用isIpv4Address()isIPv6Address().例如:

QHostAddress address(myString);
if (QAbstractSocket::IPv4Protocol == address.protocol())
{
   qDebug("Valid IPv4 address.");
}
else if (QAbstractSocket::IPv6Protocol == address.protocol())
{
   qDebug("Valid IPv6 address.");
}
else
{
   qDebug("Unknown or invalid address.");
}
Run Code Online (Sandbox Code Playgroud)

也可以看看:

http://doc.qt.digia.com/4.6/qhostaddress.html#protocol

希望这可以帮助.


siv*_*udh 6

以下是诺基亚支持工程师的官方回答,其名称已删除以保护隐私:

我在stackoverflow.com上发布了一个问题如下:

Qt是否提供代表IP地址的类?

您可以看到有人已经发布了我的问题的解决方案.

但是,我想问一下诺基亚如何才能提供一种方法

QHostAddress(如isValid())将检查主机地址的有效性?

感谢您的查询.您可以使用isNull()方法检查有效性.对于无效地址,它将返回true:http: //doc.qt.digia.com/4.6/qhostaddress.html#isNull

希望这可以帮助.

问候,

支持工程师,Qt开发框架,诺基亚