|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
8 @& J" F1 \! Z, T# K
textscan 的用法与 fscanf 类似,建议先将 fscanf 的用法弄清楚再来看 textscan。
1 s. i8 S/ t+ G% V7 ]$ I
/ T* G' t9 F9 I3 `2 W' ^1 W8 O4 P* }2 L4 X5 C
textscan 常见用法:
/ r1 f: q, J: F [. \- C = textscan(fileID,formatSpec)
- C = textscan(fileID,formatSpec,N)6 r' y% }" n9 f: L
" Y) C! I, N8 `; H5 i: q" h5 r9 R' s# b' A+ T6 n' I; H' P0 Y3 t
同 fscanf 一样,fileID 为文件标识符,formatSpec 为格式字符串。N 则是重复匹配formatSpec 的次数。! N9 L" s z8 G* L
与 fscanf 不同的是, textscan 将每个与 formatSpec 转义说明符匹配出来的数据都用一个元胞进行存储。并且 textscan 有很多选项提供,比如 ’Headerlines’ ,可以指定跳过文件的前n行; ’Delimiter’ 可以指定分隔符等等。
1 W5 N1 G4 i4 q. D% N2 N d- V* O1 Y# Z! B( U
' A2 X9 _2 z" C; l+ c
例:文本文件test.txt包含以下数据:4 D# j: F8 f4 |/ V4 Q: O( N a
! |3 x2 @8 }) x3 @1 P9 w; U: R( R16。2。3。13
! [, M! q( B: W3 e6 o5 b5。11。10。80 k: @+ d$ o( D- [; V
9。7。6。12
% O# u! |( x9 v9 B5 }* O4。14。15。1
! H5 J+ M# O$ C( I9 r- n! T
0 Y5 [+ y; r5 @9 o
8 x6 |* A0 c, d, \; ]- 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
- 11 {+ F9 j0 Q1 Q+ E
" ] o& U* ?; X; D |
|