上一篇文章讲了如何把文件作为BLOB数据类型保存到Oracle数据库中。那么如果把存到数据库中的BOLB字段保存到本地呢?
QSqlQuery query(_db);
QString sqlStr = QString("select F_FILE from T_UPDATE_FILE where F_FILENAME = \'%1\'").arg(info->fileName);
query.exec(sqlStr);
QStringList list;
QSqlRecord rec = query.record();
QByteArray ba;
while (query.next()) {
ba = query.record().value(0).toByteArray();
saveFile((info->updatePath + "/" + info->fileName), ba);
}
}
void UpdateClient::saveFile(QString path, QByteArray&ba) {
QString savePath = _exePathDir + "/" + path;
QFile file(savePath);
if (file.open(QIODevice::ReadWrite)) {
file.write(ba);
}
file.close();
}

本文介绍了一种方法,将存储在Oracle数据库中的BLOB数据读取出来,并将其保存为本地文件的过程。通过使用QSqlQuery执行SQL查询,获取指定文件名的BLOB数据,然后使用QByteArray进行数据存储,最后调用saveFile函数将数据写入到指定路径的文件中。
603

被折叠的 条评论
为什么被折叠?



