fprintf \n not working properly

19 views (last 30 days)
Tyler
Tyler on 6 Oct 2014
Commented: Image Analyst on 6 Oct 2014
Hi all, im trying to print out some data into a specific format so it can be read into another program. The code i am enacting centers around this loop:
%Write section data
for i=1:nsections
fprintf(fileID2,'SECTION %1.0f\n',i);
row_start_index = 1 + (i-1)*54;
for j=1:npoints
row_index = row_start_index+(j-1);
fprintf(fileID2,'%12.8f %12.8f %12.8f %12.8f %12.8f \n',Data(row_index,1),Data(row_index,2),Data(row_index,3),Data(row_index,4),Data(row_index,5),Data(row_index,6));
end
end
The output should look like (ignore the 1. 2. 3. 4. ... some forum formatting thing)
Section 1
  1. # # # # #
  2. # # # # #
  3. # # # # #
  4. # # # # #
Section 2
  1. # # # # #
  2. # # # # #
  3. # # # # #
  4. # # # # #
and so on
but actually what i get is this:
Section 1
  1. # # # #
  2. # # # # #
  3. # # # # #
  4. # # # # #
  5. #Section 2
  6. # # # #
  7. # # # # #
  8. # # # # #
  9. # # # # #And so on..
it appears everything is shifted over by 1 number somehow.
I should mention i have played with /r/n and opening the file with the "wt" command
Anyone know why this is happening?
Any help would be greatly appreciated !
Thanks
Tyler
  1 Comment
Guillaume
Guillaume on 6 Oct 2014
To stop Answers from replacing your first # by a numbered list, write it as #

Sign in to comment.

Accepted Answer

Oleg Komarov
Oleg Komarov on 6 Oct 2014
You are printing a 5 column row:
'%12.8f %12.8f %12.8f %12.8f %12.8f \n'
but supplying 6 datatpoints:
Data(row_index,1),Data(row_index,2),Data(row_index,3),Data(row_index,4),Data(row_index,5),Data(row_index,6)
which you can write as
Data(row_index,1:6)
  3 Comments
Image Analyst
Image Analyst on 6 Oct 2014
Well, I wouldn't say that. Everyone make simple mistakes sometimes.

Sign in to comment.

More Answers (0)

Categories

Find more on Scope Variables and Generate Names in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!