
具体命令是: 使用save * .txt -asciix
x是一个变量
*. txt是文件名,该文件存储在当前工作目录中,然后在打开后可以将其打开,数据可以以指数形式保存.
看下面的例子:
a = [17 24 1 8 15; 23 5 7 14 16; 4 6 13 20 22; 10 1219 21 3; 11 18 25 2 9];
保存afile.txt -ascii a
打开afile.txt后,看起来像这样:
1.7000000e + 001 2.4000000e + 001 1.0000000e + 000 8.0000000e + 0001.5000000e + 001
2.3000000e + 001 5.0000000e + 000 7.0000000e + 000 1.4000000e + 0011.6000000e + 001
4.0000000e + 000 6.0000000e + 000 1.3000000e + 001 2.0000000e + 0012.2000000e + 001
1.0000000e + 001 1.2000000e + 001 1.9000000e + 001 2.1000000e + 0013.0000000e + 000
1.1000000e + 001 1.8000000e + 001 2.5000000e + 001 2.0000000e + 0009.0000000e + 000
Internet上有许多类似的问题,但不是很理想. 下面介绍一种可以解决上述问题的方法: 使用fprintf命令: 以上面的示例为例:
第一种情况:
>> a = [17 24 1 8 15; 23 5 7 14 16; 4 6 13 2022; 10 12 19 21 3; 11 18 25 2 9];
>> fid = fopen('b.txt','wt');
fprintf(fid,'%gn',a);#n换行符
fclose(fid);
然后用写字板打开b.txt,内容如下: 列向量
17
23
4
10
11
24
5

6
12
18
1
7
13
19
25
8
14
20
21
2
15
16
22
3
9
第二种情况:
对上述命令进行以下更改: #n将行更改为t,使用表键
>> fid = fopen('b.txt','w');
fprintf(fid,'%gt',a);
fclose(fid);
然后用写字板打开b.txt,内容如下: 行向量:
17 23 4 10 11 24 5 6 12 18 1 7 13 19 25 8 14 20 21 2 15 16 22 39
第三种情况:

结合以上两个结果,我们编写以下命令:
fid = fopen('b.txt','wt');%写入文件路径
[m,n] = size(a);
对于i = 1: 1: m
对于j = 1: 1: n
如果j == n
fprintf(fid,'%gn',a(i,j));
其他
fprintf(fid,'%gt',a(idat文件是什么格式,j));
结束
结束
结束
fclose(fid);
然后使用写字板打开b.txt,内容如下: 矩阵
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
描述: 以上操作在当前工作目录中完成!下面给出了最通用的模型,您可以自己尝试,如果需要dat格式dat文件是什么格式,可以直接将txt更改为dat
fid = fopen('C: Documents andSettingscleantotal.ped','wt');%写入文件路径
matrix = input_mattrix%input_matrix是要输出的矩阵
[m,n] = size(matrix);
对于i = 1: 1: m
对于j = 1: 1: n
如果j == n

fprintf(fid,'%gn',matrix(i,j));
其他
fprintf(fid,'%gt',matrix(i,j));
结束
结束
结束
fclose(fid);
×××××××××××××××××××××××××××××××××××××××××××××××××××××× ×××××××××××××××
我刚开始根据这篇文章开始写作,发现换行符并非总是可以实现的,而且我总是将换行符存储在正方形中. 后来发现打开文件时属性存在问题. 将其更改为“ wt”,仅在文本模式下. . . .
在指定文件中打开matlab的fopen函数示例如下:
* 1)“ fopen”打开文件并分配文件代码.
语法1: FID = FOPEN(文件名,权限)
以指定的方式打开文件
FID = + N(N为正整数): 表示文件打开成功,文件代码为N.
FID = -1: 表示文件未成功打开.
在此文件关闭之前,FID始终有效.
如果通过阅读打开,matlab首先搜索工作目录,然后搜索其他matlab目录,“ permission”是打开模式参数.
打开模式参数由以下字符串确定:
r读出
w写(如果文件不存在,它将自动创建)
后续写入(如果文件不存在,它将自动创建)
r +读写(文件应该已经存在)
w +刷新写入,(如果文件不存在,它将自动创建)
a +随后写入(如果文件不存在,它将自动创建)
w重写,但不会自动刷新
后续写作,但不会自动刷新

文件存储格式: 打开文件的默认方式是: 二进制. 在文本模式下打开,可以在模式下引用它
在“权限”中添加“ t”个文件,例如“ rt”,“ wt +”
在matlab中fprintf函数的具体用法示例如下:
fprintf函数可以将数据以指定格式写入文本文件. 调用格式为:
格式化的数据输出: fprintf(fid,格式,变量)
以指定格式将变量的值输出到屏幕或指定文件中
fid是文件句柄,如果是默认值,它将被输出到屏幕上
1表示标准输出(屏幕),2表示标准错误. 如果省略FIDis,则输出进入屏幕.
format用于指定用于数据输出的格式
%d个整数
%e实数: 科学的计算方法表
%f实数: 十进制形式
%g由系统自动选择以上两种格式之一
%s输出字符串
fprintf(fid,格式,A)
描述: fid是文件句柄,它指定要写入数据的文件,格式是用于控制写入数据格式的格式字符,与fscanf函数相同,A是用于存储数据的矩阵
示例6.9创建一个字符矩阵并将其保存到磁盘,然后读出对另一个矩阵的分配.
>> a ='字符串';
>> fid = fopen('d: char1.txt','w');
>> fprintf(fid,'%s',a);
>> fclose(fid);
>> fid1 = fopen('d: char1.txt','rt');
>> fid1 = fopen('d: char1.txt','rt');
>> b = fscanf(fid1,'%s')
b =
字符串
matlab读取txt文件
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shumachanpin/article-269166-1.html
政府是他爸扶在那里