資源描述:
《matlab中各種數(shù)據(jù)的讀取》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、本技術(shù)支持指南主要處理:ASCII,binary,andMATfiles.要得到MATLAB中可用來(lái)讀寫(xiě)各種文件格式的完全函數(shù)列表,可以鍵入以下命令:helpiofunMATLAB中有兩種文件I/O程序:highlevelandlowlevel.Highlevelroutines:?包括現(xiàn)成的函數(shù),可以用來(lái)讀寫(xiě)特殊格式的數(shù)據(jù),并且只需要少量的編程。Lowlevelroutines:?可以更加靈活的完成相對(duì)特殊的任務(wù),需要較多的額外編程。Highlevelroutines包括現(xiàn)成的函數(shù),可以用來(lái)讀寫(xiě)特殊格式的數(shù)據(jù),并且只需要少量的編程。?舉個(gè)例子,如果你有一個(gè)包含數(shù)
2、值和字母的文本文件(textfile)想導(dǎo)入MATLAB,你可以調(diào)用一些lowlevelroutines自己寫(xiě)一個(gè)函數(shù),或者是簡(jiǎn)單的用TEXTREAD函數(shù)。?使用highlevelroutines的關(guān)鍵是:文件必須是相似的(homogeneous),換句話說(shuō),文件必須有一致的格式。下面的段落描述一些highlevelfileI/Oroutines并給出一些例子幫助理解概念。?LOAD/SAVE?主要的highlevelfileI/Oroutines是LOAD?和?SAVE函數(shù)。LOAD可以讀MAT-filedata或者用空格間隔的格式相似的ASCIIdata.SA
3、VE可以將MATLAB變量寫(xiě)入MAT-file格式或者空格間隔的ASCIIdata。大多數(shù)情況下,語(yǔ)法相當(dāng)簡(jiǎn)單。下面的例子用到數(shù)值由空格間隔的ASCIIfile?sample_file.txt?:?154168543268684321907876598123?Example:用LOADandSAVE讀寫(xiě)數(shù)據(jù)CODE:%Loadthefiletothematrix,M:M=load('sample_file.txt')?%Add5toM:M=M+5?%SaveMtoa.matfilecalled'sample_file_plus5.mat':savesample_f
4、ile_plus5M%SaveMtoanASCII.txtfilecalled'sample_file_plus5.txt':savesample_file_plus5.txtM-ascii?UIGETFILE/UIPUTFILE?UIGETFILE/UIPUTFILE是基于圖形用戶界面(GUI)的。會(huì)彈出對(duì)話框,列出當(dāng)前目錄的文件和目錄,提示你選擇一個(gè)文件。UIGETFILE讓你選擇一個(gè)文件來(lái)寫(xiě)(類似Windows‘另存為’選項(xiàng)?)。用UIGETFILE,可以選擇已存在的文件改寫(xiě),也可以輸入新的文件名。兩個(gè)函數(shù)的返回值是所選文件名和路徑。?Example:用UI
5、GETFILE從當(dāng)前目錄選擇一個(gè)M-fileCODE:%ThiscommandlistsalltheM-filesinthecurrentdirectoryand%returnsthenameandpathoftheselectedfile[fname,pname]=uigetfile('*.m','SampleDialogBox')?注意:UIGETFILE一次只能選擇一個(gè)文件。?UIIMPORT/IMPORTDATA?UIIMPORT是一個(gè)功能強(qiáng)大,易于使用的基于GUI的highlevelroutine,用于讀complexdatafiles。文件也必須是ho
6、mogeneous。?IMPORTDATA形成UIIMPORT的功能,不打開(kāi)GUI??梢詫MPORTDATA用于函數(shù)或者腳本中,因?yàn)樵诤瘮?shù)或者腳本中基于GUI的文件導(dǎo)入機(jī)制并不理想。下面的例子用到包含幾行文件頭和文本、數(shù)值數(shù)據(jù)的文件'sample_file2.txt'?:?Thisisafileheader.Thisisfileisanexample.col1col2col3col4A??1??4??612.000B??1??4??613.000C??1??4??614.000D??1??4??615.000?Example:UsingIMPORTDATAtor
7、eadinafilewithheaders,text,andnumericdataCODE:%Thisreadsinthefile'sample_file2.txt'andcreatesa%structureDthatcontainsbothdataandtextdata.%NotetheIMPORTDATAcommandspecifiesawhitespace?%asthedelimiterofthefile,butIMPORTDATAcanusually?%detectthisonitsown?D=importdata('sample_file2.txt','
8、')??%