// ============================================================================ // qdatastream_io — Qt 桌面示例 // 来源:川大 C++/LinuxC wiki「02.Qt方向」 // 原文片段:[58954552:data] // 说明:本文件由 gen_part3.py 从 wiki 片段生成(必要时补 main/QApplication // 外壳、include、修正笔误)。详见 docs/ERRATA.md。 // 离屏验证:QT_QPA_PLATFORM=offscreen tools/run_qt.sh (自动退出) // ============================================================================ #include #include #include #include #include // 二进制文件读写:先写 file.dat,再读回 int main(int argc, char* argv[]) { QCoreApplication app(argc, argv); // ---- 写 ---- { QFile file("file.dat"); if (file.open(QIODevice::WriteOnly)) { QDataStream out(&file); out << QString("hello") << qint32(42) << 3.14; file.close(); } } // ---- 读 ---- { QFile file("file.dat"); if (file.open(QIODevice::ReadOnly)) { QDataStream in(&file); QString s; qint32 n; double d; in >> s >> n >> d; qDebug() << "read:" << s << n << d; file.close(); } else { qDebug() << "open failed"; } } QTimer::singleShot(0, &app, &QCoreApplication::quit); return app.exec(); }