C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件

时间:2022-10-05 14:00:54

阅读本文可首先参考:

C++学习笔记之输入、输出和文件

测试数据:

C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件

 /*读取txt文件到二维数组*/
#include <iostream>
#include <fstream>
#include <vector>
#include <string> using namespace std; typedef vector< vector<int> > D2array; //二维数组
typedef vector<int> D1array; //一维数组 int main()
{
int row = ;
int col = ;
ifstream input("E:\\c++\\C++ code\\item_basedCF\\datafordebug.txt");//打开输入文件
ofstream output("E:\\c++\\C++ code\\item_basedCF\\mytext.txt"); //打开要写入的文件,如果该文件不存在,则自动新建
D2array out(row, D1array (col, )); //声明一个二维数组,将读入的数据写入该数组 if (!input.is_open()) //如果文件打开失败
{
cout << "File is not existing!" << endl;
exit();
} for (int i = ; i < row; i++)
{
for (int j = ; j < col; j++)
{
input >> out[i][j] ; //从输入流对象input读取字符到out
cout << out[i][j] << " ";
output << out[i][j] << " "; //将字符存入输出流对象output,因为output流已经和mytext.txt关联,所以会被写入该文件
}
cout << endl; //换行,否则显示在一行
output << endl; //换行,否则文本全存在在一行
} input.close();
output.close(); system("PAUSE");
return ;
}

运行结果:成功读入out,并且转存到mytext.txt

C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件

有兴趣的读者可以将之改为一个函数,用到时直接调用即可,程序读不懂的地方可以留言!