1

我正在使用示波器和测量信号进行作业。我编写了一个程序来自动设置示波器输出数据的参数以写入特定数量的文件(让我们称之为 N)。我将所有这些文件都放在一个文档中。

我想将这些文件导入 Matlab,提取必要的数据,并以一秒的间隔(文件到文件之间)实时绘制它们。

示例运行

将十二个文件(N = 12)写入文档/开发创建一个while循环,当输入任何键时将转义使用textread读取每个文件(我没有matlab的更新版本,所以我不能使用textscan)。绘制数据
移动到下一个文件末尾

问题是文件名不一致,它们都是根据处理它们所花费的时间命名的,所以它们每次都不同(stream-july-10-10:12,stream-july-10-10:13 ,例如 stream-july-10-10:15。

所以我需要一种移动到下一个文件并绘制它的方法,而不必实际使用文件名。

我知道它很多,但任何帮助或正确方向的任何点都将不胜感激。

谢谢,杰米奇

4

2 回答 2

2

dir将上次修改日期作为字段中的字符数组和date字段中的序列日期返回datenum。您可以sort使用datenum数组并使用返回的索引来加载数据。

基本上:

A = dir(mypath); % You can also add filter criteria here, per the documentation
[~,idx] = sort([A.datenum]);

for ii = 1:12
    filetoload = fullfile(mypath,A(idx(ii)).name); % Build absolute path to your file
    % Load in file
end
于 2014-07-16T11:30:17.403 回答
0

我认为该功能dir是您正在寻找的。它可以列出您当前 matlab 文件夹的内容并支持通配符。这样,您应该能够获取字符串数组中文件的所有路径,然后遍历该数组。

的文档dir

这个问题也可能很有趣:如何在 MATLAB 中获取特定目录下的所有文件?

于 2014-07-16T11:27:31.770 回答