Ch 18 jangcs nthu edu tw http www
- Slides: 48
Ch 18 檔案讀寫 張智星 jang@cs. nthu. edu. tw http: //www. cs. nthu. edu. tw/~jang 清大資 系 多媒體檢索實驗室
MATLAB 程式設計入門篇:讀寫檔案 高階的檔案讀寫指令 n 先列出常用讀寫檔案指令, 稍後將介紹用法 類別 一般資料 支援檔案格式 指令 MAT - MATLAB workspace load, save CSV - Comma separated numbers csvread, csvwrite DAT - Formatted text Importdata DLM - Delimited text dlmread, dlmwrite TAB - Tab separated text XLS - Excel worksheet Xlsread WK 1 - Lotus 123 worksheet wk 1 read, wk 1 write 試算表
MATLAB 程式設計入門篇:讀寫檔案 save n n 儲存計算結果至檔案。 用法: n n 將 X Y Z 三個變數存入filename. mat save filename X Y Z 將 X Y Z 三個變數存入filename. txt save filename. txt X Y Z -ascii
MATLAB 程式設計入門篇:讀寫檔案 load n n 由檔案讀出數值 用法 n n n load filename. txt –ascii X=filename(: , 1) Y=filename(: , 2) Z=filename(: , 3)
MATLAB 程式設計入門篇:讀寫檔案 save, load 例題: n n n x=1: 10; y=20: 30; z=1: 50; save test x y z; clear load test
MATLAB 程式設計入門篇:讀寫檔案 save, load 應用 2 n n x=1: 10; y=20: 30; z=1: 50; save test. txt x y z -ascii;
MATLAB 程式設計入門篇:讀寫檔案 textread n n 如果檔案資料包含數值及字串,我們就必須 改用 textread 指令 Ex: textread 01. m fprintf('data. txt 的內容:n'); type data. txt % 列出 data. txt 的內容 [name, hobby, age] = textread('data. txt', '%s%s%d')
MATLAB 程式設計入門篇:讀寫檔案 讀取文字檔 n n n textread 也可以讀取一個文字檔 同時把檔案內的每一列文字變成字串異質陣 列裡面的每一個元素 Ex: textread 03. m Contents = textread('textread 03. m', '%s', 'delimiter', 'n', 'whitespace', ''); class(contents) % 印出 contents 的資料類別 contents{1} % 列出 contents 第一列 contents{2} % 列出 contents 第二列
MATLAB 程式設計入門篇:讀寫檔案 Fileread n n 若只是要將一個檔案的內容送到一個字串, 可以使用 fileread 指令 Ex: 範例16 -6:fileread 01. m out = fileread(‘data 2. txt’); class(out) size(out)
MATLAB 程式設計入門篇:讀寫檔案 Ex: fopen 01. m [fid, message] = fopen('no_such_file', 'r'); fprintf('fid = %dn', fid); fprintf('message = %sn', message); fid = -1 message = Sorry. No help in figuring out the problem. . . n n 上例可知當檔案不存在時,回傳的 fid 是 – 1 同時 message 會包含相關的錯誤資訊。
MATLAB 程式設計入門篇:讀寫檔案 Ex: fopen 02. m n 若開啟成功,則傳回的 fid 是一個大於 2 的 整數,而且傳回的 message 是一個空字串, 例如: [fid, message] = fopen('fopen 02. m', 'r'); fprintf('fid = %dn', fid); fprintf('message = %sn', message); fid = 3 message =
MATLAB 程式設計入門篇:讀寫檔案 Ex: fscanf 01. m n 有一文字檔 test. txt 如下: 1 4 9 16 25 36 49 64 81 100 欲使用 fscanf 指令讀取其內容,可輸 入如下: n n fid = fopen('test. txt', 'r'); n my. Data = fscanf(fid, '%g'); n fclose(fid); n my. Data % 顯示 my. Data
MATLAB 程式設計入門篇:讀寫檔案 sscanf n n n sscanf 函數和 fscanf 的功能很類似 sscanf 函數從字串(Strings)中讀取資料 ex:sscanf. m str = num 2 str([pi, sqrt(2), log 10(3)]) %建立一字串str retrieved = sscanf(str, ‘%g’) %擷取str中的double str = 3. 1416 1. 4142 retrieved = 3. 1416 1. 4142 0. 47712
MATLAB 程式設計入門篇:讀寫檔案 應用: 將平方根表寫入檔案 n Ex: fprintf 01. m x = 1: 10; y = [x; sqrt(x)]; fid = fopen('square. Root. Table. txt', 'w'); fprintf(fid, 'Table of square root: rn'); fprintf(fid, '%2. 0 f => %10. 6 frn', y); fclose(fid); dos('start square. Root. Table. txt'); % 開啟 square. Root. Table. txt
MATLAB 程式設計入門篇:讀寫檔案 sprintf n n n sprintf 函數和 fprintf 函數的功能很類似 sprintf 將資料以字串形式傳回 Ex: >> str = sprintf('log(%f) = %en', 2, log(2)) str = log(2. 000000) = 6. 931472 e-001
MATLAB 程式設計入門篇:讀寫檔案 Ex: fread 01. m fid = fopen('test 2. txt', 'r'); my. Data = fread(fid); char(my. Data') % 驗證所讀入的資料是否正確 fclose(fid); n Result: This is a test! n n char 可將 my. Data 的整數轉成 ASCII 字元 取 my. Data 的轉制是為了使印出的效果易於閱讀
MATLAB 程式設計入門篇:讀寫檔案 Ex: fread 03. m fid = fopen('test 2. txt', 'r'); my. Data = fread(fid, [2 3]) fclose(fid); n Result: my. Data = 84 105 32 104 115 105 n 此時 my. Data 為 2 X 3 的矩陣。 n p. s. 上例中為長度 4的向量
MATLAB 程式設計入門篇:讀寫檔案 Ex: fread 04. m fid = fopen('test 2. txt', 'r'); my. Data = fread(fid, 1, 'short') fclose(fid); my. Data 2 = bin 2 dec([dec 2 bin(abs('h'), 8), dec 2 bin(abs('T'), 8)]) n Result: my. Data = 26708 my. Data 2 = 26708
- Gplot matlab
- Nthu vpn
- Nthu physics
- Nthu housing
- Lex yacc tutorial
- Mse nthu
- Nthu econ
- 清大 matlab
- Nthu wk
- Bbsbbs
- Nmsl nthu
- Matlab nthu
- Nthu cs
- Edu.sharif.edu
- Http //www.phys.hawaii.edu/ teb/optics/java/slitdiffr/
- Http //scratch.mit.edu/
- Adrenaline in the brain
- Teachertech.rice.edu
- 002
- Classification of pde
- Https://scratch.mit.edu/
- Http://weather.uwyo.edu/upperair/sounding.html
- Http://learn.genetics.utah.edu/
- Http //www.scratch.mit.edu
- Http://www.colorado.edu/physics/phet
- Dendro.cnre.vt.edu photosynthesis
- Assessform edu au
- ้https //scratch.mit.edu
- 2learner.hcmup.edu.vn
- Dogma of biology
- Http://weather.uwyo.edu/upperair/sounding.html
- Sir isaac newton
- Numericalmethods.eng.usf.edu
- Numericalmethods.eng.usf.edu
- Regulationssynonym
- Gestalt leveling
- Http://teachertech.rice.edu/participants/louviere/newton/
- Http://scratch.mit.edu
- Dlib.nyu.edu/aco/
- " title="" />
- Wave optics topics
- Http://learn.genetics.utah.edu/content/addiction/
- Cnh2om
- Naplan coordinator handbook
- Http://evolution.berkeley.edu
- Scratch mit
- Https//scratch.mit.edu
- Http sinhvien hufi vn
- Http //mbs.meb.gov.tr/ http //www.alantercihleri.com