c++ - 将 QNetworkReply 写入文件

标签 c++ qt

我正在使用 QNetworkAccessManager::get 下载文件,但与 QHttp::get 不同的是,没有内置方法可以直接将响应写入不同的 QIODevice。

最简单的方法是做这样的事情:

QIODevice* device;

QNetworkReply* reply = manager.get(url);
connect(reply, SIGNAL(readyRead()), this, SLOT(newData()));

然后在 newData 槽中:

device->write(reply->readAll());

但我不确定这是否是正确的方法,也许我错过了什么。

最佳答案

看起来是正确的。我会使用 read()write() 的低级形式,而不是 QByteArray 形式,后者不正确支持错误处理, 但除此之外,它看起来还不错。

您遇到问题了吗?

关于c++ - 将 QNetworkReply 写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1205419/

相关文章:

python - 从列表条目访问 SQL 数据

c++ - QML 计时器未触发

c++ - 为什么QModbusClient在打开语句后不读取数据?

c++ - Qt 5.2/OpenCV 2.4.8 - 无法通过 VideoCapture 打开视频文件

C++ 继承初始化列表

c++ - VS2010 Express Edition与QT4.7一起编译报错

c++ - 我需要帮助创建一个最小的示例,显示我的系统上的 openMP 加速情况

c++ - 外参数包可以用内参数包展开推导吗?

c++ - 为什么我的 if else 不起作用?

c++ - QObject 创建 moc 文件,但仍然出现 vtable 错误