如何从C ++中的二进制文件中读取char数组?

时间:2014-02-23 23:44:27

标签: c++ arrays binaryfiles binary-data

在你问我之前我是否在搜索信息之前(因为我知道你会问它),是的,我做了。

我正在做一个程序,我将数据保存在二进制文件中后加载数据。当我尝试从二进制文件中读取数据时遇到问题,在查找失败后的几小时后,我仍然不知道是什么。

首先,我将信息存储在二进制文件中:

ofstream of;

of << s.num;
of << s.array;

其中num是int,array是char数组[kARRAY]

然后我尝试以这种方式阅读:

ifstream fi;

int auxNum;
char auxArray[kARRAY];

fi >> auxNum;
fi >> auxArray;

一旦我从二进制文件中读取了信息,我就会尝试将这些值分配给另一个相同类型的变量,但是我会收到错误和更多错误......

char arrayResult[kARRAY];

arrayResult = auxArray;

我做错了什么?我是否应该使用特定功能,因为我正在读取二进制文件?

谢谢!

1 个答案:

答案 0 :(得分:0)

试试这个:

int auxNum;
char auxArray[kARRAY];
fi.get(auxArray, kARRAY);