从二进制文件中获取数据

问题描述

任务是我需要将一个预先初始化的结构写入一个二进制文件,然后从这个文件获取前三个和最后两个元素并将它们复制到一个文件中。现在我有一个程序,它只将我的数据结构写入二进制文件,但我不知道如何访问给定结构的前三个和最后两个元素,然后将它们写入新的二进制文件。你能解释一下如何访问二进制文件中的数据吗?

#include "iostream"
#include "fstream"
#include <string>
using namespace std;
struct timeOfFlight {
    int hours;
    int minutes;
};

struct flight {
    int numberOfRace;
    char type[50];
    timeOfFlight departureTime;
};

int main() {
    flight trip[] = {{105,"passanger",1,50},{321,"cargo",8,8},{32,15,6},{215,20,44},{123,11,14},{543,3,10},{657,5,30},{126,7,15},{135,40},};
    ofstream fout;
    fout.open("C:\\new.txt",ios_base::binary);
    for (int i = 0; i < 9; ++i) {
        fout << trip[i].numberOfRace
        << trip[i].type
        << trip[i].departureTime.hours
        << trip[i].departureTime.minutes;
        cout << "Number of race: " << trip[i].numberOfRace << " Type of plane: " << trip[i].type << " Time for flight: "
             << trip[i].departureTime.hours << " hours " << trip[i].departureTime.minutes << " minutes\n";
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)