MATLAB关于自定义函数的问题

我需要导入5个不同的文本(reffile,file1,file2,file3,file4,file5),自己编写的程序如下(将同一种方法重复5次):[FileName,P... 我需要导入5个不同的文本(reffile,file1,file2,file3,file4,file5),自己编写的程序如下(将同一种方法重复5次):
[FileName,PathName] = uigetfile('*.txt','Select the txt files');%弹出对话框,然后选择要处理的txt文件
delimiter = '\t';
formatSpec = '%s%s%s%s%s%s%s%s%[^\n\r]';
fileID = fopen([PathName FileName]);
dataArray = textscan(fileID, formatSpec, 'Delimiter', delimiter, 'ReturnOnError', false);% 根据格式字符串读入列.
fclose(fileID); % 关闭txt文件.
reffile = [dataArray{1:end-1}];
clearvars delimiter formatSpec fileID dataArray ans;% 清除临时变量

[FileName,PathName] = uigetfile('*.txt','Select the txt files');%弹出对话框,然后选择要处理的txt文件
delimiter = '\t';
formatSpec = '%s%s%s%s%s%s%s%s%[^\n\r]';
fileID = fopen([PathName FileName]);
dataArray = textscan(fileID, formatSpec, 'Delimiter', delimiter, 'ReturnOnError', false);% 根据格式字符串读入列.
fclose(fileID); % 关闭txt文件.
file1-5 = [dataArray{1:end-1}];
clearvars delimiter formatSpec fileID dataArray ans;% 清除临时变量
%%%%file1-5就是将导入的程序再重复四次%%%%
现在的问题是程序太过冗长,我想编写一个自定义函数,通过函数调用来导入文本。或者编写一个for循环来实现也可以,请问要怎么做到呢?
展开
 我来答
百度网友3c63e6c
2014-10-09 · TA获得超过2847个赞
知道大有可为答主
回答量:3829
采纳率:68%
帮助的人:2744万
展开全部
5个不同的文本(reffile,file1,file2,file3,file4,file5)

这个似乎是6个文本额。。。。

for i=1:5
name = ['file',num2str(i)];
dataArray(i) = importdata(name);
end
基本思想是这样。每个循环内读取filen文件
追问
oo,我这个文本是既含有数字又含有英文、括号等特殊字符,无法使用importdata导入。我的文本大概是这个样子的:
Stage 4 Position: 0.000
Date: 2013/8/27
Time: 13:02
Time[s] Amp[HZ]
0 4
1 5
file1-5名称与文本实际的名称不一样,这个不影响我的导入。
追答
如果自动导入的话,那么必须要求文件名有一定规律,否则没办法循环
for i=1:5
FileName = ['file',num2str(i)];
delimiter = '\t';
formatSpec = '%s%s%s%s%s%s%s%s%[^\n\r]';
fileID = fopen([FileName]);
dataArray = textscan(fileID, formatSpec, 'Delimiter', delimiter, 'ReturnOnError', false);% 根据格式字符串读入列.
fclose(fileID); % 关闭txt文件.
reffile = [dataArray{1:end-1}];
clearvars delimiter formatSpec fileID dataArray ans;% 清除临时变量
end
那么就是增加一个循环,内部结构不变。上面这个就是从同一路径下读取文件名按顺序排列的文件
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式