QT第二个文件未添加到ByteArray

时间:2018-08-10 23:15:28

标签: qt qt-quick qfile qbytearray qtextstream

我正在尝试合并2个文件,它们包含如下所示的十六进制数据:

:10000000000404000000000028160000281600006C
:1000100028160000281600002816000028160000E8
:1000200028160000281600002816000028160000D8
:1000300028160000281600002816000028160000C8
:100040002816000028160000087802002816000074

由于某种原因,只有第一个文件最终出现在输出中,这是我的相关来源:

QFile filea(file1);
QFile fileb(file2);
QFile result("C:/Users/Aaron/Desktop/mergedfile.rfu");

if(filea.open(QIODevice::ReadOnly) && fileb.open(QIODevice::ReadOnly) && result.open(QIODevice::WriteOnly)){
    QByteArray ba;
    QTextStream ts(&ba, QIODevice::ReadWrite);


    ts << filea.readAll();
    qDebug() << "check ts at 0" << ts.seek(0) <<"ts at 1" << ts.seek(1);
    ts << fileb.readAll();
    result.write(ba);
    result.flush();

我之所以使用QTextStream而不是QDataStream,是因为DataStream在输出文件的开头放置了垃圾。

0 个答案:

没有答案