此文章用来做笔记,
从MATLAB中保存的二维数组1500*2的数据到txt文件中,格式化保存方式如下:
MATLAB代码:
1
2
3
4
5
|
fid= fopen ( 'data.txt' , 'wt' ); for i=1:1500 fprintf (fid, '%.3f\t%.3f\n' ,r(i,:)); end fclose (fid); |
其中r是1500*2的矩阵
在C++中读取到程序中,使用文件流:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include<iostream> #include<fstream> #include<typeinfo> using namespace std; int main() { float data[1500][2] = { 0 }; //定义一个1500*2的矩阵,用于存放数据 ifstream infile; //定义读取文件流,相对于程序来说是in infile.open( "data.txt" ); //打开文件 for ( int i = 0; i < 1500; i++) //定义行循环 { for ( int j = 0; j < 2; j++) //定义列循环 { infile >> data[i][j]; //读取一个值(空格、制表符、换行隔开)就写入到矩阵中,行列不断循环进行 } } infile.close(); //读取完成之后关闭文件 cout << data[3][0] << ',' <<data[3][1]<< endl; //以下代码是用来验证读取到的值是否正确 cout << data[10][0] << ',' << data[10][1] << endl; cout << typeid (data[3][0]).name() << endl; cout << "Hello" << endl; system ( "pause" ); return 0; } |
以上这篇C++从txt文件中读取二维的数组方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/u013749068/article/details/78761553