两个写入文件的方法:fwrite和ofstream,其中比较常用的是fwite
ofstream
#include <iostream>
#include <fstream>
#include <vector>using namespace std;int main() {// create the vector that will be outputtedvector < vector <int> > matrix (5, vector <int> (3, 2));vector<int> row;// open a file for outputting the matrixofstream outputfile;outputfile.open ("matrixoutput.txt");// output the matrix to the fileif (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参数解析:
- 第一个参数
- 要写入元素的指针
- 第二个参数
- 要写入内容的单字节数
- 第三个参数
- 要进行写入size字节的数据项的个数;
- 第四个参数
- stream:目标文件指针;
fopen函数的参数解析
- 第一个参数
- 文件的地址
- 第二个参数
- 打开文件的方法
- 这个参数很重要,不同的方式打开,得到的数据是不一样的,当进行回调函数时,传入ab+