我可以从QFile读取从k到k + L的字节,将第一个整个文件读入QByteArray
if (!file.open(QIODevice::ReadOnly))
//...
QByteArray blob = file.readAll();
QByteArray bytes = blob.mid( k, L);
如何有效地从k到k + L读取字节?
if (!file.open(QIODevice::ReadOnly))
//...
QByteArray bytes = bytesFromFile( file, k, L);
答案 0 :(得分:5)
使用搜索方法到达您要开始阅读的文件中的位置。 然后使用read方法从该点读取任意数量的字节。
即
if (!file.open(QIODevice::ReadOnly)){
file.seek(k);
QByteArray bytes = file.read(L);
}