3

如何转换QHostAddressQStringIPv4 格式?

4

1 回答 1

8

使用QHostAddress::toString().

更新

如果您有一个QHostAddress封装了 IPv6 地址的实例(即QHostAddress::protocol()返回QAbstractSocket::IPv6Protocol),则必须先将地址转换为 IPv4 地址,然后再将 IPv4 地址转换为QString

QHostAddress ip6Address;
bool conversionOK = false;
QHostAddress ip4Address(ip6Address.toIPv4Address(&conversionOK));
QString ip4String;
if (conversionOK)
{
    ip4String = ip4Address.toString();
}

还值得注意的是,上述 IP6 到 IP4 的转换不适用于 Qt 4。它仅适用于 Qt 5。

于 2013-06-04T02:20:19.877 回答