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

阅读本文可首先参考:

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

测试数据:

 1 /*读取txt文件到二维数组*/
 2 #include <iostream>
 3 #include <fstream>
 4 #include <vector>
 5 #include <string>
 6
 7 using namespace std;
 8
 9 typedef vector< vector<int> > D2array; //二维数组
10 typedef vector<int> D1array;           //一维数组
11
12
13 int main()
14 {
15     int row = 10;
16     int col = 10;
17     ifstream input("E:\\c++\\C++ code\\item_basedCF\\datafordebug.txt");//打开输入文件
18     ofstream output("E:\\c++\\C++ code\\item_basedCF\\mytext.txt");     //打开要写入的文件,如果该文件不存在,则自动新建
19     D2array out(row, D1array (col, 0));                                 //声明一个二维数组,将读入的数据写入该数组
20
21     if (!input.is_open())     //如果文件打开失败
22     {
23         cout << "File is not existing!" << endl;
24         exit(1);
25     }
26
27     for (int i = 0; i < row; i++)
28     {
29         for (int j = 0; j < col; j++)
30         {
31             input >> out[i][j] ;          //从输入流对象input读取字符到out
32             cout << out[i][j] << " ";
33             output << out[i][j] << " ";   //将字符存入输出流对象output,因为output流已经和mytext.txt关联,所以会被写入该文件
34         }
35         cout << endl;                     //换行,否则显示在一行
36         output << endl;                   //换行,否则文本全存在在一行
37     }
38
39
40     input.close();
41     output.close();
42
43      system("PAUSE");
44      return 0;
45 }

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

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

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

时间: 2024-10-11 23:05:06

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

TensorFlow学习笔记(6)读取数据

Overview    之前几次推送的全部例程,使用的都是tensorflow预处理过的数据集,直接载入即可.例如: 然而实际中我们使用的通常不会是这种超级经典的数据集,如果我们有一组图像存储在磁盘上面,如何以mini-batch的形式把它们读取进来然后高效的送进网络训练?这次推送我们首先用tensorflow最底层的API处理这个问题,后面推送介绍高层API.高层API是对底层的进一步封装,用户可以不必关心过多细节.不过了解一下比较底层的API还是有好处的.当你有一组自己的数据的时候,你需要经

OpenCV(C++接口)学习笔记1-图像的读取、显示、保存

OpenCV在2.0版本之后添加了C++接口函数,之前学习的都是C语言的接口函数,现在OpenCV已经发展到2.4.9版本了,所以决定学习C++接口函数,跟上节奏. 1.创建图像 cv::Mat image; 采用类cv::Mat来定义图像变量或矩阵变量. 当然你也可以指定图像的大小: cv::Mat img(240,320,CV_8U,cv::Scalar(100)); 参数CV_8U中的U代表unsigned,而S代表signed.对于三通道彩色图像可以用CV_8UC3.你也可以声明16或3

UI学习笔记---第十四天数据持久化

一.沙盒机制 每个应用程序位于文件系统的严格限制部分 每个应用程序只能在为该程序创建的文件系统中读取文件 每个应用程序在iOS系统内斗放在了统一的文件夹目录下 沙盘路径的位置 1. 通过Finder查找程序沙盘相对路径 ~/Library/Application Support/iPhone Simulator 2. 通过代码查找程序沙盘相对路径 NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directory,NSSearc

sqlite学习笔记6:更新表数据

一 条件判断 在SQL中条件判断使用where,相当于其他变成语言中的if,基本用法如: SELECT column1, column2, columnN FROM table_name WHERE [condition] 另外,SQL支持数学运算,逻辑运算,位于运算等等,均可放在WHERE子句中. 二 更新表 基本语法如下: UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE

Linux程序设计学习笔记----网络编程之网络数据包拆封包与字节顺序大小端

网络数据包的封包与拆包 过程如下: 将数据从一台计算机通过一定的路径发送到另一台计算机.应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation),如下图所示: 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据包(packet),在链路层叫做帧(frame).数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,最后将应用层数据交给应用程序处理. 上图对应两台计算机在同一网段中的情况,

OpenCV2学习笔记:图像的读取与显示

1. 图像读取:imread() Mat imread(const string& ?lename, int ?ags=1 ) 参数介绍: filename: 待加载的文件名称. flags: 此标志用来指定被加载图像的颜色类型(color type).这个标志的取值可以有: -- CV_LOAD_IMAGE_ANYDEPTH : 如果设置这个标志的话,如果图像为16位或32位深度的图像,则返回对应深度的图像:否则,将图像转换为8位深度图像再返回. -- CV_LOAD_IMAGE_COLOR

《MyCat 学习笔记》第八篇.数据分片 之 求摸运算分片

1 应用场景 Mycat 自带了多套数据分片的机制,其实根据数值取摸应该是最简单的一种. 优点:数据离散概率较为平均,可以有效的提高应用的数据吞吐. 缺点:比较明显,后期数据运维与迁移比较困难.好在Mycat有对应的解决方案,具体后期验证或可直接参考Mycat权威指南相应章节. 2 环境说明 参考  <MyCat 学习笔记>第六篇.数据分片 之 按月数据分片  http://www.cnblogs.com/kaye0110/p/5160826.html 3 参数配置 3.1 server.xm

Accelerated C++学习笔记5—&lt;组织程序和数据&gt;

第4章  组织程序和数据 从前面的学习中,我们可以发现程序并不是我们所想的那么简短,他们都有一个共同的特性,那就是 1)都能解决某些特定类型的问题 2)与其他的大多数工具都互相独立 3)都具有一个自己的名称 C++中提供两种基本的方法来让我们组织大型的程序,函数(子程序)和数据结构. 1.组织计算 1)计算总成绩 子函数grade <span style="font-family:KaiTi_GB2312;">//根据学生的期中考试.期末考试.家庭作业成绩来计算总成绩 do

【Spring学习笔记-MVC-4】返回Json数据-方式2

摘要 本文讲解另外一种利用spring MVC返回json数据的方法. 前文回顾 在<[Spring学习笔记-MVC-3]返回Json数据-方式1>中介绍了通过: @ResponseBody声明返回值: 配置<mvc:annotation-driven />: 来返回json数据.效果如下:   ==>, 从上面的效果看,只能返回一个对象,不能返回多个对象,不能做到形如下图的返回结果, 存在局限性(可能可以返回多个,自己不知道如何实现). 下面介绍的方式2,利用spring