Writing a table into a text file
    5 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
Hi
I am getting so dizzy, i wrote a code and i want to record a table named 'DI' into a text file. I follow the instructions that is given here http://www.mathworks.com/help/matlab/ref/fprintf.html , but unfortunately it writes something quite different from the original table. I doubted that the code is wrong so i used the example that is given in the above link in my code and it gives me totally right answers.
The code that i use for this text writing is
fileID=fopen('ParkAngDI11.txt','w+');
fprintf(fileID,'%6s %12s\r\n','Time','Damage Index');
fprintf(fileID,'%6.2f %12.8f\r\n',DI);
fclose(fileID);
I would be so thankful if you help me through this.
2 commentaires
Réponse acceptée
  per isakson
      
      
 le 15 Fév 2013
        
      Modifié(e) : per isakson
      
      
 le 15 Fév 2013
  
      My guess: column-wise. Change
    fprintf(fileID,'%6.2f %12.8f\r\n',DI);
to
    fprintf(fileID,'%6.2f %12.8f\r\n',transpose(DI));
2 commentaires
  per isakson
      
      
 le 16 Fév 2013
				
      Modifié(e) : per isakson
      
      
 le 16 Fév 2013
  
			Column-wise is the key to understand why. fprintf reads column-wise from the input matrix and writes "row-wise" to the file controlled by the format specification. Remember: Matlab is "column-first-oriented". Try
    clc
    M = [ 11, 12; 21, 22 ]
    disp('-- fprintf --')
    fprintf( 1, '%4d,%4d\n', M )
result in the command window
    M =
        11    12
        21    22
    -- fprintf --
      11,  21
      12,  22
    >>
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur LaTeX dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


