用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理
我测了一组数据存到txt文件中,是个WIFI信号强度文档,里面有我们需要得到的数据,有没用的数据,想用matlab查找关键字(SSID),把关键字后面的数字存起来用作后期处理分析,如下图,把ky后面的信号强度数据(那个负数)弄出来。求大神指点应该怎么办,或给程序,谢谢!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
fn = 'my_data.txt' ;
fid = fopen(fn, 'r' );
R = []; while ~feof(fid)
tl = fgetl(fid);
id = findstr(tl, 'SSID' );
while ~feof(fid)
tl = fgetl(fid);
id = findstr(tl, 'ky' );
if ~isempty(id)
dt = tl(id+ 3 :id+ 10 );
dt = strtok(dt);
R = [R; str2num(dt)];
end;
end;
end; disp(R); |
追问
非常感谢您!我刚才试了试,除了有一个地方都完美,就是我txt里有100个数据,但是弄出来99个,第一个没有弄出来是怎么回事呢?希望您能再看看
回答
1
2
3
4
5
6
7
8
9
10
11
12
13
|
fn = 'my_data.txt' ;
fid = fopen(fn, 'r' );
R = []; while ~feof(fid)
tl = fgetl(fid);
id = findstr(tl, 'ky' );
if ~isempty(id)
dt = tl(id+ 3 :id+ 10 );
dt = strtok(dt);
R = [R; str2num(dt)];
end;
end; disp(R); |