|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
4 h4 J, B) @$ t; p) t3 Q* b; U+ qtextscan 的用法与 fscanf 类似,建议先将 fscanf 的用法弄清楚再来看 textscan。
, H& g# Q+ t4 s/ I! F: q% T5 s: b9 c+ ~
& n3 Q8 y+ o% n- }textscan 常见用法:
2 Z- Z# u* |2 E8 g) {+ j- C = textscan(fileID,formatSpec)
- C = textscan(fileID,formatSpec,N)' t M) C: K% h" {
" }; x" A1 W: f" Y& _. v. X
! M! e( J& F$ V# Y, R
同 fscanf 一样,fileID 为文件标识符,formatSpec 为格式字符串。N 则是重复匹配formatSpec 的次数。- U$ e% r1 l2 v
与 fscanf 不同的是, textscan 将每个与 formatSpec 转义说明符匹配出来的数据都用一个元胞进行存储。并且 textscan 有很多选项提供,比如 ’Headerlines’ ,可以指定跳过文件的前n行; ’Delimiter’ 可以指定分隔符等等。
' p! x K) C0 c& X# x
% x# ]. z$ x7 n! b7 T' ^' r4 ^6 g& [- |
例:文本文件test.txt包含以下数据:
8 Y; ]1 q' a" ?$ p& L8 A1 Q5 u3 a* g# V8 I1 a: S" l
16。2。3。13
6 ?) c( {4 [: H# \5。11。10。8
! b3 u! O8 o9 J, I$ e& W9。7。6。12
' p1 L3 g, E3 _# B1 d( U- _4。14。15。14 V' O( j0 f# _( W2 A; Z, y8 i
/ r4 e; @0 q: ?( u
) D2 ^# t: \: v6 a3 {( a# b
- 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# K4 ^, l8 D& [ Z/ z+ S% B$ A3 |
/ C ?' ~8 f& m6 P7 z |
|