MATLAB文件操作之fopen與fprintf


打開文件fopen

  調用格式:

       fid= fopen(filename)

  fid= fopen(filename, permission)

  fid= fopen(filename, permission, machineformat)

    fid= fopen(filename, permission, machineformat, encoding)

      [fid, message]= fopen(filename, ...)

      fIDs = fopen('all')

    [fid, permission, machineformat, encoding]= fopen(fileID)

一般用前兩個就可以了

參數聲明:

    fid=N(爲正數),表示文件打開成功,返回的是文件ID號,

    fid=-1時,表示文件打開失敗,可用於在判斷文件是否成功打開

filename

    filename可以是一個完整的字符串也可以是字符串拼接

fid = fopen(['finedata.txt'], 'a');
txtind=1;
fid = fopen(['finedata' num2str(txtind) '.txt'], 'a');


 

permission 取值

    r 讀出

    w 寫入,若不存在,自動創建

    a 後續寫入,文件若不存在,自動創建

    r+ 讀出和寫如,文件應已存在

   w+ 刷新寫入,文件若不存在,自動創建

   a+ 後續寫入,文件若不存在,自動創建  

   w 重新寫入,但不自動刷新

   a  後續寫入,但不自動刷新

  文件的存儲格式,文件打開的默認方式是二進制,以文本方式打開,可以在方式參數"permission"後加"t"

  如"rt","wt+"

 

2.寫入函數fprintf

  例:

 fprintf(fid, 'ID\tDD_LAT\tDD_LONG\n');

  fid表示需要寫入的文件id,'ID\tDD_LAT\tDD_LONG\n',表示的寫入的格式主要是換行符'\t',以及'\n',其它爲常量。(可要也可不要)
以後寫的數據將按照上述格式存儲

例:fprintf(fid, '%0.0f\t%f\t%f\n', n, LLlat, LLlon);

 

完整的例子,供參考:

txtind=1;
fid = fopen(['finedata' num2str(txtind) '.txt'], 'a');

fprintf(fid,'ID\tfirst\tnext\n');
for i=1:30
     fprintf(fid, '%0.0f\t%f\t%f\n', i, i+20, i+15);
end


 

發佈了23 篇原創文章 · 獲贊 106 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章