c++ - 如何在qt中解析网络主机名+端口?

标签 c++ qt networking qtcore qurl

我目前正在用 Qt 编写网络应用程序,需要以以下形式分隔网络地址:

example.org:1234

进入单独的主机名和端口 QStrings。

是否有 Qt 函数可以轻松解析并检查给定的输入是否正确?

提前致谢!

最佳答案

这很简单;您只需将 QUrl 类与 constructor 一起使用即可, host()port()方法如下:

QUrl url("http://example.org:1234")
qDebug() << "Host:" << url.host();
qDebug() << "Port:" << url.port();

至于您关于避免在每个 url 中使用方案的评论,you could use this :

url.setScheme("ftp");

url.setScheme("http");

关于c++ - 如何在qt中解析网络主机名+端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23793411/

相关文章:

c++ - 如何在 Windows 或 Linux、32 或 64 位、静态或动态的 Visual Studio 或 g++ 下编译 Qt 5

java - 如何使用防火墙/iptables 在不中断的情况下重启 Java 服务?

ios - 为什么无法通过iOS的网络扩展隧道提供程序正确路由流量?

c++ - 如何在 C++ 中转义发送到 'system' 命令的变量?

c++ - 使用 strcpy 抛出 "stack smashing detected"错误

C++从文件读入指针 vector

java - Java 中的网络发现 多播/广播 Java

c++ - 在类中使用 vector

c++ - QVector<int>[index] 返回另一个 QVector?

qt - 是否可以在 vscode 中调试 qml?