EDA365电子论坛网
标题:
MATLAB读取文本文件之dlmread函数
[打印本页]
作者:
pulbieup
时间:
2021-4-20 15:25
标题:
MATLAB读取文本文件之dlmread函数
2 O+ k. O7 n' k$ _' T
dlmread 的用法比 csvread 稍微复杂一点,它能够指定分隔符(csvread 只能读取逗号分隔符和空格分隔符)。
, s1 u8 W& j4 G: L, f( U
dlmread 常见用法:
0 x+ w$ U$ r) t$ w
M = dlmread(filename)
; w8 t3 x0 z( _' P6 C9 ^
M = dlmread(filename, delimiter)
+ L3 Q" H6 c4 Q* N
其中 filename 为所读取的文件,delimiter 为分隔符。
7 R& b" w8 }, b9 P" _% {
# s. m& D0 f2 E* A: Q
例:对于包含以下内容的文本文件:
8 f9 O0 x4 {1 L. u* B/ x. _& P
16。2。3。13
' q$ n4 K" n5 O$ E
5。11。10。8
% y# L: v! T- f3 G8 P- r
9。7。6。12
% s$ j* @) Q$ c) h( Y) }4 w
4。14。15。1
, ^8 {- ~2 h `! j/ |/ T1 c J% D/ x1 D
就可以指定’。’为分隔符进行读取:
+ I) R0 o4 E, b3 {$ O
filename = 'csvlist.dat';
) b: H6 q9 K6 e% `; s3 B+ R2 D( d
M = dlmread(filename,’。’)
7 n# ?5 O- j# r
M =
) U4 E* r1 H) V2 r/ Z; y& v
16 2 3 13
% E4 |# @ {* M5 i! `
5 11 10 8
5 y3 ]$ a5 m F x& g# b5 x
9 7 6 12
& d- v/ ` A- x& @; G
4 14 15 1
6 c" y) L# r% I+ ^
如果行列数不一致的数据, dlmread 会自动在空白数据处补0。
: e: b# g/ g7 v4 v/ \
. N0 c d) `! K" F9 q+ r
例:对于包含以下内容的文本文件:
, B4 K5 ]# K& R
40 5 30 1.6 0.2 1.2
1 Z: I& o& \% F. b' n4 q" `/ T
15 25 35 0.6 1 1.4
5 P; A: l( Z& m
20 45 10 0.8 1.8 0.4
; J' o: B; [ @* m" a1 A L/ ~- g
- J Z) @9 Y/ }* B" d. I+ N* ]
2.6667 0.33333 2
# ~" u! M; q: U+ y7 x$ c
1 1.6667 2.3333
4 ?- d+ K) ?2 C5 m6 G& f
1.3333 3 0.66667
' p! a) B7 s' U, o; G; ]
filename = 'csvlist.dat';
3 A+ t- g$ {+ h l
M = dlmread(filename)
. _; `' D$ Q2 e# U$ E) x7 T6 @
M =
6 J% ^( k; W3 P8 _, N3 i* ~
40.0000 5.0000 30.0000 1.6000 0.2000 1.2000
) c) M5 b' B+ s' X$ ?) a
15.0000 25.0000 35.0000 0.6000 1.0000 1.4000
- u3 {' _) K5 ^5 g$ i# u# H- }
20.0000 45.0000 10.0000 0.8000 1.8000 0.4000
1 p8 b0 G/ O# B+ h0 R+ }
2.6667 0.3333 2.0000 0 0 0
5 X0 g3 p3 T! Z- U0 m) V
1.0000 1.6667 2.3333 0 0 0
/ H h, p; m7 F2 M
1.3333 3.0000 0.6667 0 0 0
作者:
xiaogegepcb
时间:
2021-4-20 17:08
MATLAB读取文本文件之dlmread函数
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2