qt如何实现查看服务器文件,Qt 4.8.4如何检查http服务器上是否存在文件

你试图这样做的方式是完全错误的。 QFile无法查询网络服务器。您需要做的是使用QNetworkAccessManager类。有了这个,您可以尝试下载myapp_1.1.2_installer.exe。如果该文件不存在,您将收到一条错误消息。

为什么qtcente.org上的海报声称它对他有用......不知道。 也许因为他的地址是本地的。但它仍然有点可疑。

QNetworkAccessManager *manager = new QNetworkAccessManager(this);

connect(manager, SIGNAL(finished(QNetworkReply*)),

this, SLOT(replyFinished(QNetworkReply*)));

manager->head(QNetworkRequest(QUrl("www.foo.com/hidden/Support/myapp_1.1.2_installer.exe")));

replyFinished插槽中的QNetworkReply具有方法NetworkError QNetworkReply::error() const。

如果您的文件不存在,您应该获得QNetworkReply :: ContentNotFoundError。

编辑:正如几条评论指出的那样,只是为了了解远程服务器上存在的文件,使用'get'并连接到replyFinished可能不是最好的想法。对于非常小的文件可能没问题,但对于大量数据来说肯定有点过分。我将'get'请求改为'head'。特纳的解决方案将起作用,我现在应该是一个可接受的替代方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值