fprintf multiple column string

10 次查看(过去 30 天)
I have imported a large file of numbers and letters into Matlab as a string. In short, after some number edits (which I know how to do), I am attempting to then use fprintf to save this to a new file. However, only the first column of the string is being saved. How do I save all the columns?
The input file and output file are shown in images.
Here is the code (the imported file is saved as variable S):
fileID = fopen('newfile.in','w');
fprintf(fileID, '%s\n', S);
fclose(fileID);
  1 个评论
Bob Thompson
Bob Thompson 2018-4-3
编辑:Bob Thompson 2018-4-3
What file format is fileID?
I ask because fprintf() is intended to print strings out into a text or ascii format file, but your images appear to be almost an excel format. fprintf will not work properly printing to an excel file.
If that is a .csv file type then fprintf will work, but most likely still not properly delineate the different columns as it is intended to print single column lines of text, not string data to multiple columns.

请先登录,再进行评论。

采纳的回答

Steamboat Rock
Steamboat Rock 2018-4-3
I figured out how to do it...
for i=1:length(S(:,1))
fprintf(fileID, '%s ',S(i,:)');
fprintf(fileID,'\n');
end
Cheers!

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by