QUrl url("bword://blood transfusion");
QString res = url.toString();

为什么我得到字符串“ bword:”而不是“ bword://输血”?

如何获得Qurl的字符串“ bword://输血”?

有帮助吗?

解决方案

URL语法可能很复杂,请参阅 维基百科文章. 。问题是您的URL不包含 权威 字段,它只有 方案 字段“ bword”和 小路 “ //输血”。并根据 RFC3986-统一资源标识符(URI):通用语法:

当不存在权威时,路径不能以两个斜杠字符开始(“ //”)。

因此您的URL无效(尽管 isValid() 返回true)。将您的代码更改为:

QUrl url("bword:/blood transfusion");
QString res = url.toString();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top