Запрос MATLAB о записи результатов в текстовый файл - PullRequest
0 голосов
/ 27 декабря 2010

У меня есть вопрос о выводе некоторых результатов в текстовый файл в MATLAB. По сути, я прочитал данные из 50000 файлов (пронумерованных последовательно от 1 до 50000) и нанес их на карту. Только те файлы, которые удовлетворяют определенному условию, построены. Теперь я хочу добавить код, который позволит мне записывать текст в файл данных. Конкретный текст, который я хочу написать, - это номера файлов (от 1 до 50000), которые соответствуют определенным условиям и нанесены на график.

Когда я пытаюсь это сделать, графики работают нормально, но текстовый файл содержит только последний номер файла. Например, если последний номер файла для выполнения условий, которые будут отображены на графике, равен 50000, то текстовый файл содержит только 50000. Я не уверен, как изменить код - любая помощь / совет / советы будут оценены.

start_sim=1;  
end_sim=50000;  
h = zeros (1,10000);  
for i=start_sim:end_sim  
a=int2str(i);  
File =strcat('result_', 'simulation', '_', a, 'I_byCal_totale.out');
est_tot=importdata(File, '\t', 1);
cal_tot=est_tot.data;
magnitude=1;
t1=cal_tot(:,1)+1750;
model=cal_tot(:,3)+cal_tot(:,5);
if (model(211)>=25)
if (model(211)<=150)
h(a)=plot(t1,model);
xlim([1910 1970]);
ylim([0 500]);
hold all
clickableLegend(h(a),a,'Location','BestOutside')

%Generate OutputFile
fid = fopen('Modeloutputs.in','w+'); 

%Generate some text to write in the file (e.g. the simulation number)
% Print the text in the file
fprintf(fid,h(a),'\t','\n');
%close the file
fclose(fid);

end

1 Ответ

1 голос
/ 27 декабря 2010
fid = fopen('Modeloutputs.in','a+'); 

должен делать вашу работу.Ваша первоначальная попытка с использованием 'w+' приведет к удалению

содержимого существующего файла или создания нового файла и его открытию для чтения и записи.,Другой вариант - переместить fopen & fclose за пределы вашего цикла, что я бы предпочел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...