用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理

用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);
原文地址:https://www.cnblogs.com/yymn/p/4566854.html