EDA365电子论坛网
标题:
MATLAB读取文本文件之textscan函数
[打印本页]
作者:
pulbieup
时间:
2021-5-10 18:14
标题:
MATLAB读取文本文件之textscan函数
' X4 B: J$ @$ f; E
textscan 的用法与 fscanf 类似,建议先将 fscanf 的用法弄清楚再来看 textscan。
+ V' ]% w: E- u; O) g! k- }
}9 x. o9 w" w$ @: w/ W3 l
2 ^5 L0 q9 P: v7 n; {; ~
textscan 常见用法:
{4 j. ? F5 g$ p. H$ G
C = textscan(fileID,formatSpec)
C = textscan(fileID,formatSpec,N)
5 `" g+ @: y W5 p9 P& i
) _; Q m" e' I5 _1 V2 J
( U8 _0 E: l& ?( d3 o
同 fscanf 一样,fileID 为文件标识符,formatSpec 为格式字符串。N 则是重复匹配formatSpec 的次数。
* o- X) U4 C5 H
与 fscanf 不同的是, textscan 将每个与 formatSpec 转义说明符匹配出来的数据都用一个元胞进行存储。并且 textscan 有很多选项提供,比如 ’Headerlines’ ,可以指定跳过文件的前n行; ’Delimiter’ 可以指定分隔符等等。
: R3 t5 u8 Q0 L4 A+ Y
3 Y- g" A/ w: R, \4 d
3 M6 H s/ o# q! [* t, K' P/ I3 R
例:文本文件test.txt包含以下数据:
) {3 t0 u5 U; F+ e
, ?% p" z2 B( M. i/ l/ ~
16。2。3。13
9 z* N) K% l& G5 [+ f" Y
5。11。10。8
' G9 j' t4 s& w" |1 q) r l% W& Q
9。7。6。12
( f" y i4 b* a( b
4。14。15。1
9 g8 h) a2 I# U5 k" A
# {0 a6 L3 c7 r" h
: W# q' D9 }& O0 c# J1 \2 f$ {: m- ~1 ?. U
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
- Y8 `1 ^- q( i- g) Y* y ]3 X
6 r. d1 s$ t& A
作者:
yin123
时间:
2021-5-10 19:02
MATLAB读取文本文件之textscan函数
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2