Matlab中读取txt文件的几种方法

一、纯数据文件(没有字母和中文,纯数字) 对于这种txt文档,从matalb中读取就简单多了 例如test.txt文件,内容为“17.901 -1.1111 33.045 17.891 -1.1286 33.045 17.884 -1.1345 33.045”

可以在command window中输入load test.txt ,然后就会产生一个test的数据文件,内容跟test.txt中的数据一样;另一种方法是在file/import data....../next/finish 也可产生一个叫test的数据文件。 二、中英文和数据如test1.txt

“你好 欢迎来到 振动论坛 vib.hit.edu.cn 1 11 111 1111 2 22 222 2222 3 33 333 3333

4 44 444 4444 5 55 555 5555”

这样的文件怎么读入数据呢?

方法有多种,现举两个比较简单实用的。

方法一:

file/import data....../next/finish >> whos

Name Size Bytes Class data 5x4 160 double array textdata 4x1 300 cell array Grand total is 54 elements using 460 bytes >> data

data =

1 11 111 1111 2 22 222 2222 3 33 333 3333 4 44 444 4444 5 55 555 5555 >> textdata textdata = '你好' '欢迎来到' '振动论坛' 'vib.hit.edu.cn'

方法二:

[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)

说明:%s可以是其他形式,跟读入的数据类型有关,比如这里也可以用%n,%f等。

这里%s的个数和[a1,a2,a3,a4]对应。

>> [a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4) a1 = '1' '2' '3' '4' '5' a2 = '11' '22' '33'

'44' '55' a3 = '111' '222' '333' '444' '555' a4 =

'1111' '2222' '3333' '4444' '5555'

因以字符串的形式读入,所以有''。

———————————————————————————————— 三、中文 数据 英文 混乱如test.txt 你好

1 11 111 1111 欢迎来到 2 22 222 2222 振动论坛 3 33 333 3333 vib.hit.edu.cn 4 44 444 4444 5 55 555 5555

说明:这种内容格式的文件用上面的方法是不行的。 以下是由chinamaker编写的一种方法:

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4