txt式是这样的
1111111111111111111111111111111
1111111111111111111111111111111
1111111111111111111111111111111
2222222222222222222222222222222
2222222222222222222222222222222
2222222222222222222222222222222
3333333333333333333333333333333
3333333333333333333333333333333
3333333333333333333333333333333
要求每段写入一个矩阵 小弟是菜鸟 还请帮帮忙
不同的文件 行数不一样,每一行的 长度也不一致
Matlab txt文件写入到矩阵的问题 急
答案:3 悬赏:50 手机版
解决时间 2021-03-07 19:53
- 提问者网友:且恨且铭记
- 2021-03-07 09:49
最佳答案
- 五星知识达人网友:蕴藏春秋
- 2021-03-07 10:22
这个用load函数就可以:
假设你的数据文件是data1.txt,写入到矩阵M:
load('data1.txt');
M = load('data1.txt');
验证:
>> M
M =
1.0e+030 *
1.1111
1.1111
1.1111
2.2222
2.2222
2.2222
3.3333
3.3333
3.3333
无误。但是这里有个小问题,如果你的数据是"1 1 1 1"(四个数),请不要写成"1111";如果两个数据中间没有空格的话,matlab不会自动区分。
假设你的数据文件是data1.txt,写入到矩阵M:
load('data1.txt');
M = load('data1.txt');
验证:
>> M
M =
1.0e+030 *
1.1111
1.1111
1.1111
2.2222
2.2222
2.2222
3.3333
3.3333
3.3333
无误。但是这里有个小问题,如果你的数据是"1 1 1 1"(四个数),请不要写成"1111";如果两个数据中间没有空格的话,matlab不会自动区分。
全部回答
- 1楼网友:洒脱疯子
- 2021-03-07 11:07
注: n为矩阵中每一行 1的个数。
a=[ones(1,n);ones(1,n);ones(1,n)];
............
............
- 2楼网友:佘樂
- 2021-03-07 10:48
a=[1 2 3 4 5];b=[4 5 6 7 8];
a=[a',b'];
fid=fopen('c:\users\gk\desktop\b.txt','wt');%改为你自己文件的位置
[m,n]=size(a);
for i=1:m
for j=1:n
if j==n
fprintf(fid,'%g\n',a(i,j));
else
fprintf(fid,'%g\t',a(i,j));
end
end
end
fclose(fid)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯