fprintf to display variables

12 次查看(过去 30 天)
I am using fprinf to save results in a text file. However, my results are not aligned. This is how my text file looks like right now. Is there a way to allign these values so that I can analyze them easily in excel.
1.000000 45.000000 3.907000 196.067603 6.000000 11.000000 13.000000
2.000000 6.000000 5.109000 196.067603 6.000000 11.000000 13.000000
3.000000 6.000000 5.372000 90.000000 6.000000 11.000000 13.000000
4.000000 4.000000 5.536000 81.000000 6.000000 11.000000 13.000000
5.000000 1.000000 5.691000 72.900000 6.000000 11.000000 13.000000
  1 个评论
Stephen23
Stephen23 2018-3-26
Excel reads CSV files, so why not simply create a CSV file?
Or even an Excel .xlsx file?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2018-3-26
If you put commas instead of spaces then excel could read it as a csv file.
You might want to use dlmwrite() or csvwrite() to make it easier.
Or you could just use a width specification in your fprintf:
>> fprintf('%12.6f %12.6f %12.6f\n', [1 45 3.907;2 6 5.109].')
1.000000 45.000000 3.907000
2.000000 6.000000 5.109000
  6 个评论
Walter Roberson
Walter Roberson 2018-3-27
    fid = fopen('ADMM_Release.csv','wt');  
    for k1 = 1:1000
          for k2 = 1:200
              fprintf(fid, '%12.6f %12.6f %12.6f %12.6f', k1, k2, time_Release_MIQP, rho);
              fprintf(fid, ' %12.6f', a_det ) ;
              fprintf(fid, '\n');
          end
      end
      fclose(fileID);
Isha Sharma
Isha Sharma 2018-3-29
Thank you , this works :)

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by