两个写入文件的方法:fwrite和ofstream,其中比较常用的是fwite
ofstream
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main() {
// create the vector that will be outputted
vector < vector <int> > matrix (5, vector <int> (3, 2));
vector<int> row;
// open a file for outputting the matrix
ofstream outputfile;
outputfile.open ("matrixoutput.txt");
// output the matrix to the file
if (outputfile.is_open()) {
for (int row = 0; row < matrix.size(); row++) {
for (int column = 0; column < matrix[row].size(); column++) {
if (column != matrix[row].size() - 1) {
outputfile << matrix[row][column] << ", ";
}
else {
outputfile << matrix[row][column];
}
}
outputfile << endl;
}
}
outputfile.close();
return 0;
}
fwrite
#include <stdio.h>
struct mystruct
{
int i;
char cha;
};
int main(void)
{
FILE *stream;
struct mystruct s;
if ((stream = fopen("TEST.$$$", "wb")) == NULL) /* open file TEST.$$$ */
{
fprintf(stderr, "Cannot open output file.\n");
return 1;
}
s.i = 0;
s.cha = 'A';
fwrite(&s, sizeof(s), 1, stream); /* 写的struct文件*/
fclose(stream); /*关闭文件*/
return 0;
}
fwrite参数解析:
fopen函数的参数解析
- 第一个参数
- 文件的地址
- 第二个参数
- 打开文件的方法
- 这个参数很重要,不同的方式打开,得到的数据是不一样的,当进行回调函数时,传入ab+