在Octave中,如何从txt文件加载变量和值?

时间:2018-11-05 00:12:29

标签: octave

首先,感谢您的帮助。 我的问题是,我说我有readme.txt文件,内部内容如下所示

a1 3
b2 4
c3 -2.3
d23 55.6

现在,我该如何创建一个函数来加载此txt文件,以便在八度音阶中,我将直接拥有

a1=3
b2=4
c3=-2.3
d23=55.6

直接让我再说一次。一旦使用此功能“ readFunction(“ readme.txt”)”,所有这些变量将被加载并可以使用。

我尝试过[name,num] = textread(“ readme.txt”,“%s%f”),“ num”是数字,但是我不知道如何将单元格“ name”转换为变量名称。例如,如果我做char(name(1))= b(1)是错误的。 (尝试做a1 = 3)。

也许我的方法是完全错误的?感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

首先,这个想法:

  1. 逐行读取文件
  2. =符号代替空格
  3. (可选)在每行末尾添加一个;符号
  4. eval字符串。

第二,一个简单的代码示例:

filename="file.txt";
fid=fopen(filename);

line=fgetl(fid);

while line != -1
    eval(strrep(line, ' ', '='));
    line=fgetl(fid);  
endwhile

fclose(fid);