第1个回答 推荐于2016-10-09
clear;
clc;
fidin=fopen('1.txt'); % 打开1.txt文件
fidout=fopen('mkmatlab.txt','w'); % 创建MKMATLAB.txt文件
i=1;
while ~feof(fidin) % 判断是否为文件末尾
tline=fgetl(fidin); % 从文件读行
tmp=find(tline==','); % 判断首字符是否是逗号
l=length(tline);
a(i)=str2num(tline(2:tmp-1));
b(i)=str2num(tline(tmp+1:l-1));
i=i+1;
end
c=[a;b]';
以上代码本地测试通过。
另外,其实还有一个简单的方法,你何不打开txt,利用替换功能把“{”、“}”、“,”这三个符号都换成空格,这样就可以直接用load了,在数据规模大的时候,还是用load快啊。
第2个回答 2010-03-19
把前三行删除,然后用命令A=load('xxx.txt')就可以把数据读到数组A里了
第3个回答 2015-09-22
%用matlab将二维数组写入txt文件
%比方说 矩阵A 为
A=[1 2 3;4 5 6];
%那么程序 为
fid=fopen('A1.txt','w');
[b1 b2]=size(A);
for i=1:b1
for j=1:b2
fprintf(fid,'%10d',A(i,j));
end
fprintf(fid,'/n');
end
fclose(fid);