如何在matlab中访问*.txt文件中的数字



我有一个data.txt文件,如:

123 124 125 126

我想将这些数字与num

进行比较

我的代码是这样的

 data= textread('data.txt','%d');
    num = 125;
    if num == data
         b = 1;
    else
         b = 0;
    end

但答案是0 (b = 0)

如何扫描这些数字?

摘自eq函数(==运算符的函数形式)的文档页:

A == B

如果一个输入是标量数组,另一个输入是非标量数组,则标量输入被视为具有相同属性的数组维度作为非标量输入数组。也就是说,如果输入A是数字100,B是一个3 × 5的矩阵,那么a就被当作100是一个3 × 5的元素矩阵,每个元素设为100。MATLAB返回与非标量输入数组具有相同维数的数组。

下面是if语句文档中的相关部分:

if expression
    statements
end

当结果为非空和时,求值表达式为真包含所有非零元素(逻辑或实数)。否则,表达式为false

所以也许你想用:

if any(data == num)
    disp('number found')
end

最新更新