数组写入Txt 与读Txt到数组 C++
2016-03-05 15:19
302 查看
因为需要保存一些二维数组的数据,所以在写入到Txt,与从Txt中读出到数组中还是不很理解,上网查了很久,发现很多都是讲了很多理论的,不适合刚刚入门的小菜鸟,于是我这只菜鸟就写了个菜鸟版的,其中讲述组的数据写入到Txt,和将TxT 中的数据读入到数组。废话少说直接上代码:
#include<iostream>
#include<fstream>
#include <string >
#include<sstream>
using namespace std;
int main()
{
int Arr[3][4];
int Arr2[3][4];
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
Arr[i][j]=i+j;
}
}
//这一部分是要写入txt,注意的是ofstream是代表从内存到外面的文件,所以是out
ofstream outfile ("C:\\Users\\CMH\\Desktop\\DensityData.txt",ios::in|ios::out|ios::binary);
if(!outfile.is_open())
{
cout<<" the file open fail"<<endl;
exit(1);
}
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
outfile<<Arr[i][j]<<" ";
}
outfile<<"\r\n";
}
outfile.close();
//这一部分是要从txt读入,这里时从外面的文件写入到内存,所以使用in
ifstream infile("C:\\Users\\CMH\\Desktop\\DensityData.txt",ios::in|ios::out|ios::binary);;
if(!infile.is_open())
{
cout<<"file open fail"<<endl;
exit(1);
}
string line,s;
int row=0;
while ( getline( infile, line ) )
{
int col=0;
stringstream ss;//注意这个的头文件是 #include<sstream>
ss<<line;
while(ss)
{
int a;
ss>>a;
Arr2[row][col]=a;
col++;
}
row++;
}
infile.close();
cout<<"输出的"<<endl;
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
cout<<Arr2[i][j]<<" ";
}
cout<<endl;
}
int a;
cin>>a;
return 0;
}
#include<iostream>
#include<fstream>
#include <string >
#include<sstream>
using namespace std;
int main()
{
int Arr[3][4];
int Arr2[3][4];
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
Arr[i][j]=i+j;
}
}
//这一部分是要写入txt,注意的是ofstream是代表从内存到外面的文件,所以是out
ofstream outfile ("C:\\Users\\CMH\\Desktop\\DensityData.txt",ios::in|ios::out|ios::binary);
if(!outfile.is_open())
{
cout<<" the file open fail"<<endl;
exit(1);
}
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
outfile<<Arr[i][j]<<" ";
}
outfile<<"\r\n";
}
outfile.close();
//这一部分是要从txt读入,这里时从外面的文件写入到内存,所以使用in
ifstream infile("C:\\Users\\CMH\\Desktop\\DensityData.txt",ios::in|ios::out|ios::binary);;
if(!infile.is_open())
{
cout<<"file open fail"<<endl;
exit(1);
}
string line,s;
int row=0;
while ( getline( infile, line ) )
{
int col=0;
stringstream ss;//注意这个的头文件是 #include<sstream>
ss<<line;
while(ss)
{
int a;
ss>>a;
Arr2[row][col]=a;
col++;
}
row++;
}
infile.close();
cout<<"输出的"<<endl;
for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
cout<<Arr2[i][j]<<" ";
}
cout<<endl;
}
int a;
cin>>a;
return 0;
}
相关文章推荐
- switch语句解析
- C++设计模式之适配器模式
- 复杂链表的复制
- VS2010 VS2012版最常用的快捷键
- 双向链表操作(逆置三种实现以及 冒泡排序 )
- C++异常基础
- c++引用计数实现
- 《编写高质量代码:改善C++程序的150个建议》读书笔记5(关于异常处理的部分)
- 学习C++反汇编-单继承
- 【学习C++】1.开始学习C++
- 1026. Table Tennis (30)
- 【C++学习之路】派生类的构造函数(三)
- 《Effective C++》Rule42: 了解 typename 的双重意义
- C++中的析构函数为什么通常为虚函数
- C语言获取系统当前时间转化成时间字符串
- C++项目文件中的后缀名为SDF的文件是什么?有什么用?
- c++primer(第五版) 第十章 泛型算法习题答案
- 【总结】逆置双向链表的三种方法
- 重拾c语言——指针与数组
- POJ1190