gpt4 book ai didi

qt - 尝试使用 Qt 应用程序将超过 600mb 的文件上传到服务器

转载 作者:行者123 更新时间:2023-12-04 06:03:08 37 4
gpt4 key购买 nike

我正在尝试使用 Qt 开发文件上传器。这是我的代码:

    QNetworkAccessManager * manager = new QNetworkAccessManager(this);
QNetworkRequest request(url);
QByteArray line;
QFile file(//path);
while(!file.atEnd())
{
line.append(file.readLine());
}
file.close();

QObject::connect(manager,SIGNAL(finished(QNetworkReply *)), this, SLOT(error_On_File_Send(QNetworkReply *)));
manager->post(request, line);

它适用于小文件。但它不适用于大文件并给出 std:bad_alloc 错误。我该怎么办

最佳答案

使用 QNetworkAccessManager::post ( const QNetworkRequest & request, QIODevice * data ) .它会在需要时自动从任何 QIODevice 读取数据。 QFile 是 QIODevice 所以你应该只稍微改变你的代码。注意必须自己管理连接的QIODevice(在finished()信号后删除)

关于qt - 尝试使用 Qt 应用程序将超过 600mb 的文件上传到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8701587/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com