我有一个文本文件,其中有11列(由|分隔)和许多行。有些列只有数值(例如年龄),有些列只有字符串(例如名称),有些列有两个(例如地址)。我想要做的只是获取数字列(只有数字的列)。在这些数字列的某些地方,您还可以找到空白。
下面给出几行......
1415 E CENTRAL RD |ARLINGTON HEIGHTS|IL|60005|1|45.50 |.00|1|b| |C
10733 GRAND AV |MELROSE PARK |IL|60164| |45.50 |.00|0|a|1|A
1029 CHARLELA LN 20|ELK GROVE |IL|60007| |45.50 |.00|1|a| |C
如上所述,我想只获得第4,5,6,7,8和10列。
我尝试过dlmread,textscan,csvread,tdfread。但每次我都有错误。
答案 0 :(得分:1)
使用textscan的简单方法。
file=('1.txt');
format=('%*s%*s%*s%d%d%f%f%d%*c%s%*c');
fid=fopen(file);
data=textscan(fid,format,'delimiter','|');
我不知道第9列中应该是什么值,所以我使用了限定符字符串。在这种情况下,如果使用%d我们得到零,则正确显示空格。