我在网上到处搜索,没有找到多少。以下是我的当前代码:
QNetworkAccessManager* qnam = new QNetworkAccessManager(this);
QUrl url = QUrl("ftp://example.com/file.txt");
url.setHost(QString("ftp://example.com"));
url.setUserName(QString("user"));
url.setPassword(QString("pass"));
url.setPort(21);
QNetworkRequest req(url);
file.close();从我现在的情况来看,我如何写到"file.txt“呢?
谢谢
发布于 2017-05-21 04:02:53
据我所知(可能还有其他方法)
给出了一个使用本地文件的示例。如果你想的话,试着用你的自我去寻找流淌。代码是粗伪码。在生产中使用它时要小心.
首先,为网络管理器的finished信号创建一个槽,以便完全读取该文件。
connect(qnam,SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));获取网络回复,如下所示。
QNetworkReply *nReply = qnam->get(req);创建一个槽函数来将完整的文件读取到本地。
void YourClass::replyFinished(QNetworkReply *data) {
QFile file("YourFileName");
if (!file.open(QIODevice::WriteOnly))
return;
file.write(data->readAll());
file.close();
}以编程方式修改本地文件。
现在将文件上传回FTP,如下所述.
QNetworkRequest upload(url);
qnam->put(upload, "YourFileName");https://stackoverflow.com/questions/44092177
复制相似问题