用Matlab处理文件,一个文件夹中含一万个txt文件(数据格式保存),要求读出文件中的所有数据。
答案:2 悬赏:50 手机版
解决时间 2021-04-14 16:44
- 提问者网友:夢醒日落
- 2021-04-14 13:10
txt文件名无明显规则,每次读出一个文件后,处理数据再保存有用信息。
最佳答案
- 五星知识达人网友:十鸦
- 2021-04-14 14:19
%假设你的文件名在c盘 叫test.txt
fid=fopen('c:\test.txt');
data=textscan(fid,'%s','delimiter','\n');%把数据按行读入
fclose(fid);%关闭文件
data=data{1,1};
A=textscan(data{1},'%n','delimiter',' ');把第一行按空格为分割赋给A
B=textscan(data{2},'%n','delimiter',' ');同上B
C=textscan(data{3},'%n','delimiter',' ');同上C
A=A{1};B=B{1};C=C{1};把A,B,C由cell转成向量
%这样的话无论这三行分别有多少个数据都可以的。
%程序都是支持的。
fid=fopen('c:\test.txt');
data=textscan(fid,'%s','delimiter','\n');%把数据按行读入
fclose(fid);%关闭文件
data=data{1,1};
A=textscan(data{1},'%n','delimiter',' ');把第一行按空格为分割赋给A
B=textscan(data{2},'%n','delimiter',' ');同上B
C=textscan(data{3},'%n','delimiter',' ');同上C
A=A{1};B=B{1};C=C{1};把A,B,C由cell转成向量
%这样的话无论这三行分别有多少个数据都可以的。
%程序都是支持的。
全部回答
- 1楼网友:往事埋风中
- 2021-04-14 14:32
如果将矩阵写入到excel中,可以使用xlswrtie函数,然后指定你要保存的路径和矩阵即可。
如,你想将矩阵 mmatrix保存到d盘data目录下,可以写成
xlswrite('d:/data/filename', mmatrix);
当然'd:/data/filename',你可以使用相对路径。
分享一个我自己写的一个函数,将矩阵写入到txt文件中的函数
function write_file( filename,source_matrix )
%test summary of this function goes here
% write matrix to file
fid=fopen(filename,'a');
[x,y]=size(source_matrix);
for i=1:x
for j=1:y-1
fprintf(fid,'%s\x20',num2str(source_matrix(i,j)));
end
fprintf(fid,'%s\r\n',num2str(source_matrix(i,y)));%每一行回车\n
end
fclose(fid);
end
filename,就是的文件路径和文件名。
source_matrix ,就是你要输出的矩阵。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯