首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取多个文件(波形读取)

读取多个文件(波形读取)
EN

Stack Overflow用户
提问于 2016-04-01 09:24:29
回答 1查看 524关注 0票数 1

我想从某个目录读取几个文件。这是我的剧本:

代码语言:javascript
复制
prefix = '\wav\';
wav_arr = ['1.wav'; '2.wav'; '3.wav'];
wav_arr = cellstr(wav_arr);

len = length(wav_arr);
sig = [];
fs = [];
for i = 1:len
    path = strcat(pwd, prefix, wav_arr(i));
    [s, curr_fs] = audioread(path);
    sig = [sig s];
    fs = [fs curr_fs];
end

但我收到了一个错误:

代码语言:javascript
复制
Error using which
Argument must contain a string.

Error in audiovideo.internal.absolutePathForReading (line 7)
whichFileName = which(filename);

Error in audioread (line 74)
filename = audiovideo.internal.absolutePathForReading(...

Error in main_experiment (line 14)
    [s, curr_fs] = audioread(path);

问题是path1x1 cell,不是string。而为cellstr()执行path不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-01 09:58:44

代码语言:javascript
复制
for i = 1:len
    path = strcat(pwd, prefix, wav_arr(i));
    [s, curr_fs] = audioread(path);
    sig = [sig s];
    fs = [fs curr_fs];
end

成为

代码语言:javascript
复制
for i = 1:len
    path = strcat(pwd, prefix, wav_arr{i});
    [s, curr_fs] = audioread(path);
    sig = [sig s];
    fs = [fs curr_fs];
end

仅此而已,请阅读matlab中有关单元格的文档,以了解单元格(1)和单元格{1}之间的区别。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36352602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档