MATLAB Answers

how to open *.txt files with variable names

62 views (last 30 days)
hi I have a function '[dl]=funcall(x,y)' and in it I want to create *.text file with variable names and write out put vectors 'dl'. such as this
function [dl]=funcdl(x,y)
fid=fopen('DL.txt', 'wt');
fprintf(fid, '%f\n',dl);
fprintf(fid, '\n');
but every time by calling function it creates the same name 'DL.txt' and overwrites out put!!! any one can help me???


Sign in to comment.

Accepted Answer

Stephen Cobeldick
Stephen Cobeldick on 13 Oct 2014
Edited: Stephen Cobeldick on 13 Oct 2014

  1 Comment

Stephen Cobeldick
Stephen Cobeldick on 13 Oct 2014
Try this, for example:
for k=1:3
str = sprintf('temp%d.txt',k);
fid = fopen(str,'wt');
... write data to your file here (fprintf, or whatever...)
EDIT: uses sprintf, based on the comments of Image Analyst and Robert Cumming.

Sign in to comment.

More Answers (1)

Gaurav Shukla
Gaurav Shukla on 13 Oct 2014
Consider an array
VarName = [A,B,C];
for i=1:3
str = strcat('fopen(''',VarName(i),'.txt','wt');


Andrew Reibold
Andrew Reibold on 13 Oct 2014
You don't have the experience to come up with a single example? Or is this just an attempt at rhetoric..
Stephen Cobeldick
Stephen Cobeldick on 4 Jan 2015
How about this example (from one of your own questions):
In a comment to one of the answers to that question you write "Its just that the code I inherited is just an absolute catastrophe when it comes to formatting and practice".
This seems to contradict your earlier comment on this thread: "I'm all for good coding practice, but at the same time when you need a fast, effect, simple, easy to understand solution for a quick job, sometimes being an elitist about your code is more of a hinderance and bottleneck then anything else".
And yet it seems that someone else's "fast, effect[ive], simple" solution became your "absolute catastrophe" problem to solve, which really did cause you a "hinderance and bottleneck" : not because it was well written code, but because it was poorly written code and because this is usually what poorly written and obfuscated code does.
MATLAB's inbuilt tools help to avoid basic syntax mistakes, which goes part of the way to writing good code. So, dear reader, why not use them?
Stephen Cobeldick
Stephen Cobeldick on 4 Jan 2015
For new readers, read all of these comments and
Do NOT use this code

Sign in to comment.