資源描述:
《matlab中將數(shù)據(jù)輸出保存為txt格式文件的方法》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、將matlab中數(shù)據(jù)輸出保存為txt或dat格式總結(jié)網(wǎng)上各大論壇,主要有三種方法。第一種方法:save(最簡單基本的)具體的命令是:用save*.txt-asciixx為變量*.txt為文件名,該文件存儲(chǔ)于當(dāng)前工作目錄下,再打開就可以打開后,數(shù)據(jù)有可能是以指數(shù)形式保存的.例子:a=[17241815;23571416;46132022;101219213;11182529];saveafile.txt-asciiaafile.txt打開之后,是這樣的:1.7000000e+0012.4000000e+0011.0
2、000000e+0008.0000000e+0001.5000000e+0012.3000000e+0015.0000000e+0007.0000000e+0001.4000000e+0011.6000000e+0014.0000000e+0006.0000000e+0001.3000000e+0012.0000000e+0012.2000000e+0011.0000000e+0011.2000000e+0011.9000000e+0012.1000000e+0013.0000000e+0001.1000000e
3、+0011.8000000e+0012.5000000e+0012.0000000e+0009.0000000e+000第二種方法:dlmwritedlmwrite('a.txt',a,'precision','%10.0f')或者是dlmwrite('a.txt',a,'delimiter','t')對(duì)于只有一行或者一列的數(shù)據(jù),很適用,但是多行的,就亂了網(wǎng)上有很多這一類似的問題,但是都不是很理想第三種方法:fopen+fprintf下面主要介紹這種方法,可以解決以上問題:用fprintf命令:以上面的例子為例
4、:第一種情況:>>a=[17241815;23571416;46132022;101219213;11182529];>>fid=fopen('b.txt','wt');fprintf(fid,'%g',a);???????#換行fclose(fid);然后用寫字板打開b.txt,內(nèi)容如下:為列向量17234101124561218171319258142021215162239第二種情況:對(duì)上面的命令做一下改動(dòng):#換行改為t,table鍵>>fid=fopen('b.txt','w');fprin
5、tf(fid,'%gt',a);fclose(fid);然后用寫字板打開b.txt,內(nèi)容如下:為行向量:17?23?4?10?11?24?5?6?12?18?1?7?13?19?25?8?14?20?21?2?15?16?22?3?9?第三種情況:綜合上面的兩個(gè)結(jié)果,我們編寫以下命令:6、printf(fid,'%g',a(i,j));?????else???????fprintf(fid,'%gt',a(i,j));??????end???endendfclose(fid);然后用寫字板打開b.txt,內(nèi)容如下:矩陣17?24?1?8?1523?5?7?14?164?6?13?20?2210?12?19?21?311?18?25?2?9說明:以上操作都是在當(dāng)前的工作目錄下完成!下面給出最一般的模型,大家可以試著自己操作,如果需要dat格式,直接把txt換為dat就可以fid=fopen('
7、C:DocumentsandSettingscleantotal.ped','wt');%寫入文件路徑matrix=input_mattrix????????????????????????%input_matrix為待輸出矩陣[m,n]=size(matrix);?fori=1:1:m???forj=1:1:n??????ifj==n????????fprintf(fid,'%g',matrix(i,j));?????else???????fprintf(fid,'%gt',matrix(i,j));
8、??????end???endendfclose(fid);×××××××××××××××××××××××××××××××××××××××××××××××××××××××××下面附了具體的matlab的fopen和fprintf函數(shù)具體解釋,當(dāng)然help一下是可以知道的,只是為了方便大家matlab中fopen函數(shù)在指定文件打開的實(shí)例如下:*1)“fopen”打開文件,賦