创建一个文件夹,而不是在其中写入许多文本文件

时间:2014-03-31 11:17:28

标签: matlab text-files printf

我想创建一个名为'all'的文件夹,之后我想在'all'中创建和编写许多文本文件。文本文件的名称为x1.txt,x2.txt,x3.txt&等等。这是我的方法,但它以某种方式失败:

    folderName  = all;       
    mkdir(folderName);

    temp = ['x', num2str(k), '.txt'];
    fid2 = fopen('x.txt', 'w');
    fprintf(fid2, '%s\n', [folderName/temp '/' M{:}]); % M is a string, that I want to write in the text file
    fclose(fid2);

1 个答案:

答案 0 :(得分:0)

试试这个 -

folderName = 'all';
mkdir(strcat(folderName,filesep,'temp'));

N = 10; %%// Number of files needed
for k = 1:N
    temp = ['x', num2str(k), '.txt'];
    pathname1 = strcat(pwd,filesep,folderName,filesep,'temp',filesep,temp);%%// creates the temp directory in the working directory.

    fid1 = fopen(pathname1, 'w');
    fprintf(fid1, '%s\n',M{:});
    fclose(fid1);

end

因此,文件x1.txtx2.txtx3.txt等将在目录temp内的目录all内创建,{ {1}}位于工作目录中。

如果您想在其他位置创建此目录all,请在开始时提及all的完整路径并编辑folderName创建,如下所示 -

pathname1