C++语言怎么对磁盘文件操作

来源:百度知道 编辑:UC知道 时间:2024/06/29 00:21:37
我用MATLAB做了一个正弦信号的数据存储在一个
mat文件中,现在要在一个C++的程序中使用这个数据,怎么读出来啊?谢谢!文件名为sin_wave.mat!
谢谢!

首先要知道文件的格式,如果只是文本文件或二进制文件则很好读。
二进制读写
ifstream fin("sin_wave.mat", iso::binary);
int a;
float b[4];
fin.read(((char *)(&a)), sizeof(int));
fin.read(((char *)(b)), sizeof(float)*4);
fin.close();

ofstream fout("data.dat", iso::binary);
int a = 3;
float b[4] = {0.1, 0.2, 0.3, 0.4};
fout.write(((char *)(&a)), sizeof(int));
fout.write(((char *)(b)), sizeof(float)*4);
fout.close();

文本文件读:
ifstream fin("sin_wave.mat", iso::binary);
int a;
float b[4];
fin>>a;
for(int i = 0; i < 4; ++i) fin>>b[i];

fin.close();