matlab使用fopen/fprintf/fclose将矩阵保存入txt中的按行存储与按列存储问题 | 您所在的位置:网站首页 › matlab中的printf函数 › matlab使用fopen/fprintf/fclose将矩阵保存入txt中的按行存储与按列存储问题 |
对于matlab中一个矩阵: 当使用如下代码: %运行环境matlab2018b fid=fopen("mytxt1.txt",'w'); fprintf(fid,'%d\n',A); %使用\n进行换行或\t制表 fclose(fid);打开'''mytxt.txt"之后可以看到存储的结果为: 1 4 7 2 5 8 3 6 9 原因是matlab的索引是按照先列再行的顺序,即先按照第一列1 4 7、第二列2 5 8……的顺序进行存储,比如A(2)=4,而A(1,2)=2; 2、按行存储使用自定义函数maketxt.m: function maketxt(A) [row,col]=size(A); fid = fopen("mytxt1.txt",'W'); for i=1:row; for j=1:col fprintf(fid,"%d\t",A(i,j)); end end fclose(fid); end并在命令行窗口中输入: maketxt(A) 即可获得按照行来保存的mytxt1.txt文件: 1 2 3 4 5 6 7 8 9 3、最简单的按行存储直接将要按行存储的灰度图片转置即可,然后按照按列存储的方式进行。 |
CopyRight 2018-2019 实验室设备网 版权所有 |