Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Writing to a file and printing on the screen at the same time
Replies: 7   Last Post: Feb 22, 2013 6:33 PM

 Messages: [ Previous | Next ]
 Walter Roberson Posts: 7,678 Registered: 1/20/06
Re: Writing to a file and printing on the screen at the same time
Posted: Jan 20, 2011 7:14 AM

On 20/01/11 5:58 AM, ondrej Mandula wrote:
> "matt dash" wrote in message <ih8g59\$lu3\$1@fred.mathworks.com>...
>> You can just write a function like
>>
>> function dualfprintf(fid,message)
>> fprintf(fid,message);
>> fprintf(message);

>
>> You can just write a function like
>>
>> function dualfprintf(fid,message)
>> fprintf(fid,message);
>> fprintf(message);

>
> Thank you, but I need to print something more complicated with various
> number of variables something like
> s='hello';
> p=12;
> fprintf(fid,[message '%s %f \n'], s, p);
> fprintf([message '%s %f \n'], s, p);
>
> I know that if fid=1 thank fprintf(fid, 'complicated message') prints on
> the screen. So i was looking for something like fidvec = [1 fid];
> fprintf(fidvec, 'complicated message')

Nope, that doesn't exist. Try

t = sprintf('complicated format',variable,variable);
fwrite(1,t);
fwrite(fid,t);

Caution: do not continue to use what you are using! Instead of

fprintf(fid,[message '%s %f \n'], s, p);

fprintf(fid, '%s%s %f \n', message, s, p);

as otherwise message will get re-parsed looking for things that
accidentally look like formats.

I'm not sure why you are putting a space before the end-of-line by the way ?

Date Subject Author
1/19/11 ondrej Mandula
1/20/11 matt dash
1/20/11 ondrej Mandula
1/20/11 Walter Roberson
1/20/11 ondrej Mandula
1/20/11 Bruno Luong
2/21/13 Leo Simon
2/22/13 Bruno Luong