在每次迭代MATLAB中将创建的文件存储在一个文件夹中

时间:2014-04-09 05:22:01

标签: matlab file loops wav

我在for循环的每次迭代中创建.wav文件,并且.wav文件存储在我正在处理的当前目录中。现在我想在当前目录中创建一个文件夹,每个创建的文件应该存储在每次迭代中创建的文件夹......

for i=1:size(seg_data(:,1))
    w(i,:)=data(seg_data(i,1): seg_data(i,2));
    wavwrite(w(i,:),['file_',num2str(i)]);
end

1 个答案:

答案 0 :(得分:2)

您应该使用mkdir创建新目录(一次) 然后,您应该将新文件夹的相对路径提供给wavwrite

subFolderName = 'mySubFolder'; % for example
mkdir( subFolderName ); % if folder exists, a warning is issued
for ii=1:size( seg_data, 1 )
    % ... do your stuff here
    wavwrite( w(ii,:), fullfile( subFolderName, sprintf( 'file_%d', ii ) ) );
end

注意使用fullfile创建路径字符串 - 适用于windows和linux路径。

PS,
最好not to use i as a variable name in Matlab