在Matlab中保存不同文件夹中的循环输出

时间:2013-11-22 12:16:12

标签: matlab save

我正在使用下面的代码将输出图像保存在与m文件相同的目录中。我正在尝试自动将输出图像保存在不同文件夹中,文件夹名称与“文件”名称相同。

 clear all;
 files = dir('*.dat');
 for k = 1:length(files);
     filename   = files(k).name;
     data1      = fopen(filename,'r');
     data2      = textscan(data1, '%f%f','headerlines',1,'CollectOutput',1);
     data       = data2{:,1};

     x = data(:,1);             
     y = data(:,2); 
     plot(x, y);  
     [pathstr, name, ext] = fileparts(filename);  

     temp = ['fig', num2str(k), '.eps'];
     print(gcf, '-depsc', temp);
     fclose(data1);
 end

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您必须创建一个子文件夹(以您的文件名命名),然后在此文件夹中打印。

folderName = filename;
mkdir(folderName);
print( gcf , [folderName '/' filename] ); %or use `filesep` function to replace /