二进制文件的读写:
QDataStream 提供了基于 QIODevice 的二进制数据的序列化。数据流是一种二进 制流,这种流完全不依赖于底层操作系统、CPU 或者字节顺序(大端或小端)。由于数据流就是二进制 流,因此我们也可以直接读写没有编码的二进制数据,例如图像、视频、音频等。 QDataStream 既能够存取 C++ 基本类型,如 int、char、short 等,也可以存 取复杂的数据类型,例如自定义的类。实际上,QDataStream 对于类的存储,是 将复杂的类分割为很多基本单元实现的。
1,写二进制文件:
QString path = QFileDialog::getSaveFileName(this,"open","./","source(*.cpp)");
if(path.isEmpty() == false){
QFile file(path);
if(file.open(QIODevice::WriteOnly) == true)
{
/*常见数据流和file文件关联
* 往数据流输入数据=往文件里面写数据
*/
QDataStream stream(&file);
stream << QString("测试") << 250;
file.close();
}
}
注:创建数据量对象的时候绑定输入输出驱动后,向数据流里面写数据,相当于往驱动绑定的文件里面写数据。和标准C++里面的输入输出流一样,<<
表示数据的流向。
2,读二进制文件
QString path = QFileDialog::getOpenFileName(this,"open","./","source(*.cpp)");
if(path.isEmpty() == false)