1、 matlab檔案操作主要有三個步驟:首先開啟檔案,然後對檔案進行讀寫操作,最後要關閉檔案。
2、 fid=fopen(檔名,開啟方式)
'r'唯讀,檔案必須存在(預設的開啟方式)
'w'寫檔案,若檔案已存在則原內容將被覆蓋;若檔案不存在則新建乙個
'a'在檔案末尾新增,檔案若不存在則新建乙個
'r+'
可讀可寫,檔案必須存在
'w+'
可讀可寫,若檔案已存在則原內容將被覆蓋;若檔案不存在則新建乙個
'a+'
可讀可寫可新增,檔案若不存在則新建乙個
3、 fid 為檔案控制代碼,其它函式可以用它對該檔案進行操作。如果控制代碼值大於 0,則表示檔案開啟成功;若開啟失敗,fid 的返回值為 -1。
fid=fopen('output.txt','wt+');
fprintf(fid,'hello world!\n');
fclose(fid);
4、 有兩個標準**檔案,不需開啟就可以直接使用,分別為:fid=1 標準輸出檔案,fid=2 標準錯誤檔案。
fprintf(1,'hello world!\n');
fprintf(2,'hello world!\n');
5、 若不指定開啟方式,則表示唯讀。
6、在windows下,開啟檔案的預設是二進位制格式,如果要以文字方式開啟,則必須在打方式中加上字元 't'。
fid=fopen('output.txt','wt+');
7、 其中 fid 為所要關閉的檔案的控制代碼,status 為關閉檔案的返回**,若關閉成功則為 0,否則為 -1。
status=fclose(fid);
8、 文字檔案的讀取
[a,count]=fscanf(fid,format,size)
a 用來存放讀取的資料
count 返回讀取資料的個數,為可選項
fid 為檔案控制代碼
size 為可選項,預設為讀取整個檔案,
若給出,則取值可以是:
n讀取 n 個資料到乙個列向量
inf讀取整個檔案
[m,n]
讀取 m ´ n 個資料到乙個 m ´ n 矩陣中,按列存放
format 用來控制讀取的資料格式,由 % 加上格式符組成,下表中是常見的格式符,在 % 之後可以加上資料寬度,如 %12d
c字元型
g浮點數(自動)
d十進位制整數
o八進位制
e浮點數(科學計數法)
s字串
f浮點數(小數形式)
x十六進製制
9、文字檔案的寫入
count=fprintf(fid,format,輸出變數列表)
l fprintf 命令的格式說明符
c字元型
g浮點數(自動)
d十進位制整數
o八進位制
e浮點數(科學計數法)
s字串
f浮點數(小數形式)
x/x十六進製制
l format 中還可以使用的特殊字元
\b退後一格
\t水平製表符
\f換頁
\\反斜槓
\n換行
''單引號
\r回車
%%百分號
10、讀寫的定位
fseek:
status=fseek(fid,offset,origin)
fid 為檔案控制代碼
offset 表示位置指標相對偏移的位元組數,若為正表示向檔案尾方偏移,若為負表示向檔案頭方向偏移
origin 表示位置指標移動的參照位置,有三種取值:
'cof' 表示當前位置,
'bof' 表示檔案的開始位置,
'eof' 表示檔案末尾;
若定位成功,status 返回值為 0,否則返回 -1
ftell、frewind 和 feof:
返回值為從檔案開始到指標當前位置的位元組數:position=ftell(fid)
將位置指標返回到檔案的起始位置:frewind(fid)
判斷檔案位置指標是否達到檔案結束位置,若檔案位置指標已在檔案末尾,則返回 1,否則返回 0:eofstat=ftell(fid)
參考:
matlab檔案操作
matlab檔案操作 檔案操作是一種重要的輸入輸出方式,即從資料檔案讀取資料或將結果寫入資料檔案。matlab提供了一系列低層輸入 輸出函式,專門用於檔案操作。1 檔案的開啟與關閉 1 開啟檔案 在讀寫檔案之前,必須先用fopen函式開啟或建立檔案,並指定 對該檔案進行的操作方式。fopen函式的呼...
matlab檔案操作
檔案輸入輸出 matlab 系統具有直接對磁碟檔案進行訪問的功能,使用者不僅可進行高層的程式設計,必要時還可進行低層次磁碟檔案的讀寫操作,增強了 matlab 程式設計的靈活性。matlab 內建有很多有關檔案輸入和輸出的函式,使用者可以很方便地對二進位制檔案或 ascii 檔案進行開啟 關閉和儲存...
matlab 檔案路徑操作
1 fullfile 用於將若干個字串連線成乙個完整的路徑,例如 filepath fullfile d matlab example.txt 效果是 filepath d matlab example.txt 2 dir 用於列出乙個目錄的內容,返回值為乙個結構體型別,其中 name 檔案或者目錄...