如何用Matlab將cell數據寫入文件


我們知道,一般的文件讀寫函數是不接受直接將cell內容(非數值)直接寫入文件的,

例如:dlmwrite('o.txt', C, 'delimiter', '\t');%C 為cell類型數據,會報錯

C=:

'tim' 'space' 'ss'
'ddsa' 'sd' 'as'
'as' 'w' 'r'

那么假如我們只想寫入C的第一列和第二列的數據到文件中,怎么辦?

下面用比較原始(ben)的方法來實現:

 

clc
clear all
%這里換成源文件路徑
fname = 'E:\r.xls';
[x_c y_c] = xlsread(fname);
%這里換成輸出文件路徑
fid = fopen('E:\o.txt','wt');
for i = 1:size(y_c,1)
    fprintf(fid,'%s\t%s\n',y_c{i,1},y_c{i,2});
end
fclose(fid);

值得注意的是,如果fopen打開格式是‘w'類型,那么'\n',在記事本中打開不顯示換行,原因是matlab默認打開格式是以二進制的方式打開的,而記事本是以Unicode的方式打開,故,如果要顯示,選擇fopen的打開方式為’wt'類型。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM