MATLAB中將資料寫入TXT文字文件中
阿新 • • 發佈:2019-01-23
matalb中開啟檔案:
fid = fopen(檔名,‘開啟方式’);
說明:fid用於儲存檔案控制代碼值,如果fid>0,這說明檔案開啟成功。開啟方式有如下選擇:
‘r’:只讀方式開啟檔案(預設的方式),該檔案必須已存在。
‘r+’:讀寫方式開啟檔案,開啟後先讀後寫。該檔案必須已存在。
‘w’:開啟後寫入資料。該檔案已存在則更新;不存在則建立。
‘w+’:讀寫方式開啟檔案。先讀後寫。該檔案已存在則更新;不存在則建立。
‘a’:在開啟的檔案末端新增資料。檔案不存在則建立。
‘a+’:開啟檔案後,先讀入資料再新增資料。檔案不存在則建立。
另外,在這些字串後新增一個“t”,如‘rt’或‘wt+’,則將該檔案以文字方式開啟;如果新增的是“b”,則以二進位制格式開啟,這也是fopen函式預設的開啟方式。
(注:當用‘a’時,如果文字中已經存在資料,不會清空資料,而是在資料之後寫入,而‘w’會清空原本的資料,重新寫入)
一,如果要儲存單行、單列資料
fid=fopen(['d:\','A.txt'],'w');%寫入檔案路徑
for jj=1:length(A)
fprintf(fid,'%.4f\r\n',A(jj)); %按列輸出,若要按行輸出:fprintf(fid,'%.4\t',A(jj));
end
fclose(fid);
二,如果要儲存一個矩陣
fid=fopen(['d:\','B.txt'],'w');%寫入檔案路徑 [r,c]=size(B); % 得到矩陣的行數和列數 for i=1:r for j=1:c fprintf(fid,'%f\t',B(i,j)); end fprintf(fid,'\r\n'); end fclose(fid);
三,如果要手動儲存到指定位置,指定檔名
[FileName,PathName]=uiputfile({'*.txt','Txt Files(*.txt)';'*.xls','Excel(*.xls)';'*.*','All Files(*.*)'},'choose a File'); %% pathname獲取儲存資料路徑, filename獲取儲存資料名稱 if ~FileName return; else str= [PathName,FileName]; end fid = fopen(char(str), 'w'); % 要想存的檔名是自己輸入的,這個地方就得這樣寫 [r,c]=size(C); % 得到矩陣的行數和列數,C為要保持的矩陣 for i=1:r for j=1:c fprintf(fid,'%f\t',C(i,j)); end fprintf(fid,'\r\n'); end fclose(fid);