2015-12-01 4 views
0

Как включить имя файла строки в функцию fopen? См. Код и комментарии ниже.MATLAB - как взять строку в качестве аргумента для функции

for i=1:5 
    filename = strcat('Cali',num2str(i)); 
    %first iteration: filename = Cali1   
    %instead of result.txt there should be Cali1.txt in the following statement, but i want to achieve this by using the string filename 

    fid = fopen('results.txt', 'wt'); 
    fprintf(fid, 'write something'); 
    fclose(fid); 
end 
+5

Это [ясно указано в документации] (http://www.mathworks.com/help/matlab/ref/fopen.html#btrnoom-1). Передайте его как аргумент функции. – excaza

+0

возможно также необходимо добавить расширение файла ... 'filename = strcat ('Cali', num2str (i), '. Txt'); ' – RTL

+0

Это просто! благодаря – d4rty

ответ

2

Это базовая функциональность Matlab. Вы должны прочитать руководство немного ближе. Тем не менее, вот код, который нужно:

for i=1:5 
    fid = fopen(['Cali' num2str(i) '.txt'], 'wt'); 
    fprintf(fid, 'write something'); 
    fclose(fid); 
end 

Если вы хотите использовать strcat, просто добавьте строку filename = strcat('Cali', num2str(i), '.txt'); в коде вы были выше.

Смежные вопросы