Re: [讨论] 读txt数据遇到文字行怎跳过QQ

楼主: celestialgod (天)   2015-08-11 12:16:30
看了推文,想说试试看全部用string读入之后
str2num可以转数字的string就会变量字
不是的就是empty,感觉很适合用在这个case上
程式:
% data.txt
AAA A AA AAAAA
BBBB BB BBBB
3.1E+1 1.1E-1
2.1E+1 1.9E-1
4.4E+1 4.4E-1
CCC C CC CCCCC
DDDD DD DDDD
6.9E+1 1.5E-1
3.8E+2 9.9E-1
4.1E+1 9.1E-1
EEE E EE EEEEE
FFFF FF FFFF
% code
fileId = fopen('data.txt', 'r');
data_cell = textscan(fileId, '%s %s %s %s');
fclose(fileId);
data_cell = cat(2, data_cell{:});
num_cell = cellfun(@str2num, data_cell, 'UniformOutput', false);
cell2mat(num_cell)
31.0000 0.1100
21.0000 0.1900
44.0000 0.4400
69.0000 0.1500
380.0000 0.9900
41.0000 0.9100
※ 引述《lovemormus (暗黑小雪)》之铭言:
: 高手帮帮忙Q
: 我的txt档长得这样
: AAA A AA AAAAA
: BBBB BB BBBB
: 3.1E+1 1.1E-1
: 2.1E+1 1.9E-1
: 4.4E+1 4.4E-1
: CCC C CC CCCCC
: DDDD DD DDDD
: 6.9E+1 1.5E-1
: 3.8E+2 9.9E-1
: 4.1E+1 9.1E-1
: EEE E EE EEEEE
: FFFF FF FFFF
: 以此类推...
: 两行文字以后接着三行我要的数据
: 我希望他能只图数据就像这样
: 3.1E+1 1.1E-1
: 2.1E+1 1.9E-1
: 4.4E+1 4.4E-1
: 6.9E+1 1.5E-1
: 3.8E+2 9.9E-1
: 4.1E+1 9.1E-1
: 以此类堆
: 我试过textread可是不知道怎样跳行读...
: 求助各位高手!
作者: tycg (蔡蔡很忙)   2015-08-11 17:37:00
哦哦 这方法满简洁的 谢谢分享!
作者: ManoloKors (Kors)   2015-08-11 19:54:00
感动...
作者: lovemormus (暗黑小雪)   2015-08-13 16:14:00
感谢您的回答!我终于做出来了!

Links booklink

Contact Us: admin [ a t ] ucptt.com