|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
) P) h5 Y& m7 O- W. X m1 z
textscan 的用法与 fscanf 类似,建议先将 fscanf 的用法弄清楚再来看 textscan。
5 g3 j1 }. \- q$ f' w. \
3 G2 T5 J! n. U) a S9 c6 v: W* f! r; J6 I0 P
textscan 常见用法:) \ n5 Z4 Z5 O; L" Z1 S: R1 w$ u: p
- C = textscan(fileID,formatSpec)
- C = textscan(fileID,formatSpec,N)
; q" J- M& ]. V- D# G/ E6 k 2 D- F" t% `9 t; m' K
; Y9 y G" F) p/ s8 b% H0 g同 fscanf 一样,fileID 为文件标识符,formatSpec 为格式字符串。N 则是重复匹配formatSpec 的次数。; T* K; y, v# J& c& y7 p" \
与 fscanf 不同的是, textscan 将每个与 formatSpec 转义说明符匹配出来的数据都用一个元胞进行存储。并且 textscan 有很多选项提供,比如 ’Headerlines’ ,可以指定跳过文件的前n行; ’Delimiter’ 可以指定分隔符等等。: y( P9 |4 M! C/ n# |8 W* \
. z* ~% Y8 F' n- B" I) a4 s' a0 E; F8 N( c1 h0 q
例:文本文件test.txt包含以下数据: O/ y3 v3 H3 k, V& [
& J/ C+ u* Y3 u7 H5 k5 p
16。2。3。13
) a& q! v: C s5 J$ g5。11。10。8/ o) p, ]9 z" T) g& X7 P
9。7。6。121 c: r: @& A8 S+ {
4。14。15。17 T( T* z6 R( |, u) l
$ \ l" N* {& K# `7 l. o* b: d/ n/ t1 i" A4 l
- fid = fopen('F:\test.txt');
- formatSpec = '%d'
- A = textscan(fid,formatSpec,'delimiter','。'); %指定’。’为分隔符,如果不指定分隔符的话,就需要把formatSpec写成'%d。%d。%d。%d' 。
- fclose(fid);
- celldisp(A)
- A{1} =
- 16
- 2
- 3
- 13
- 5
- 11
- 10
- 8
- 9
- 7
- 6
- 12
- 4
- 14
- 15
- 1
, u; d' Z3 i" Q" U8 v" ^% S Y. ` 7 x/ u# e. r4 ?6 b$ c$ f
|
|