fprintf to print to both file and command window

I'd like to run a single fprintf operation to print to both command window and file.
I know that the below command only print to 'log.txt' file:
fid = fopen('log.txt', 'w');
fprintf(fid, 'start logging\n');
And below will only print to command window:
fprintf('start logging\n');
Is there a way to print to both without calling fprintf twice?
Thanks,

 Réponse acceptée

I doubt it.
I'm not sure what your goal is, but it would certainly be trivial to write your own small function. Something like
function [] = writeToScreenAndFile(fid,str)
fprintf(fid, str);
fprintf(str);
end

1 commentaire

Louis
Louis le 29 Avr 2020
The goal is to have a log file which logs desired stutus messages. However, I also would like the log messages to appear on the command window as well.

Connectez-vous pour commenter.

Plus de réponses (1)

Ameer Hamza
Ameer Hamza le 29 Avr 2020
Modifié(e) : Ameer Hamza le 29 Avr 2020

0 votes

Read my answer here: https://www.mathworks.com/matlabcentral/answers/516548-using-fprintf-to-write-to-multiple-files-simultaneously#answer_424960 which answers this exact question. It suggests two methods: create a custom function or overloading fprintf function.

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Produits

Version

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by