c++ - Qt 检查有效的 URL

标签 c++ qt url

我正在尝试创建一个 Qt 应用程序来检查用户在文本编辑中输入的 URL 是否有效。

这是我目前所知道的,但它只说输入的 URL 有效,即使我输入的 URL 无效也是如此。

bool checkUrl(const QUrl &url) {
    if (!url.isValid()) {
        //qDebug(QString("Invalid URL: %1").arg(url.toString()));
        return false;
    }
    return true;
}

void MainWindow::on_pushButton_clicked()
{
    QString usertext = ui->plainTextEdit->toPlainText();
    QUrl url = QUrl::fromUserInput(usertext);
    if (checkUrl(url))
        ui->textEdit->setPlainText("Valid URL.");
    else
        ui->textEdit->setPlainText("Invalid URL.");
}

同样在 qDebug 行上有一个错误:

/home/user/HTML/mainwindow.cpp:32: error: no matching function for call to ‘qDebug(QString)’

有谁知道问题出在哪里,因为它一直返回 true?

最佳答案

你应该像这样使用qDebug:

qDebug() << QString("Invalid URL: %1").arg(url.toString());

还要注意 QUrl::isValid() 不检查 url 的语法。您可能希望使用正则表达式来验证网址。

关于c++ - Qt 检查有效的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9666403/

相关文章:

c++ - 使用文件的外观作为触发器

php - 请求 .php 时 css 不工作,如 "/example.php/"但显示内容

java - 尝试在 JFrame 中显示 URL 图像

c++ - 计数排序卡在for循环中

c++ - 属性组合在 Boost::spirit 中不起作用

python - 防止屏幕上快速移动的物体模糊

c++ - 从配置文件读取路径

android - 如何从图库中检索图片的 Picasa ID/URL

c++ - 一遍又一遍地重新定义变量是否会增加内存?

c++ - 在 QTableView 中设置 QPlainTextEdit 委托(delegate)的高度