2016-04-28 6 views
0

У меня есть 100 изображений для анализа, и я хочу, чтобы каждый результат изображения сохранялся в файл. Так что у меня есть 100 изображений, и я хочу иметь 100 txt-файлов. Теперь он может сохранить только последний результат. Вот мой код.Как сохранить вывод в несколько файлов txt?

fid=fopen('Mycode.txt','w'); 
for k = 1:nColors 
    numTotalImage = (size(a,1) * size(a, 2))*3; %151287 
    numnonzero = nnz(segmented_images{k}); 
    Percentage = (numnonzero /numTotalImage)*100; 
    A = cluster_center(k,1); 
    B = cluster_center(k,2); 
    m =[k; A ;B ;Percentage]; 

    fprintf(fid , '%.1f, %f, %f, %.1f \r\n' , m); 
end 
fclose(fid); 

Я уже меняю режим 'w' на 'a', поэтому он добавляет результат, но он все еще находится в том же файле. Как я могу использовать разные txt-файлы для каждого входа?

ответ

2

вам нужно открыть новый файл на каждой итерации.
отбрасывать ведущий fid=fopen('Mycode.txt','w'); и замыкающие fclose(fid); и изменить свой код:

for k=1:nColors 
    fid = fpoen(sprintf('Mycode_color%d.txt',k),'w'); %// different file according to k 

    % do your stuff here... 

    fprintf(fid , '%.1f, %f, %f, %.1f \r\n' , m); %// write to file 
    fclose(fid); %// close the file at each iteration 
end 
Смежные вопросы