IDL:自动更改.pro中的变量?

时间:2012-07-12 18:44:22

标签: idl-programming-language

我想知道是否有办法使用一堆包含值的.txt文件来更改已编译的IDL .pro文件中的变量值。

例如,我有3个.txt文件,每个文件有2行。让我们打电话给他们:

 1. C:\input1.txt
 2. C:\input2.txt
 3. C:\input3.txt

内容如下:

hello
world

.pro我看起来像这样:

pro tst1
common vars, a, b
infile = 'C:\input1.txt'
a =''
b =''
openr,lun, infile, /get_lun
readf,lun,a
readf,lun,b
end

pro tst2
common vars, a, b
tst1
print,a, b
end

我想要做的是更改每次迭代的infile变量,直到读完所有3个input.txt文件。

不幸的是,我确实需要在第一个专业版中使用公共块和infile。我试图自动化一个令人讨厌的.pro(我的简单例子),它让我有点疯狂。

1 个答案:

答案 0 :(得分:1)

类似的东西:

pro tst1, infile
  common vars, a, b

  a = ''
  b = ''
  openr, lun, infile, /get_lun
  readf, lun, a
  readf, lun, b
  free_lun, lun
end

pro tst2
  common vars, a, b
  for i = 1, 3 do begin
    tst1, string(i, format='(%"C:\infile%d.txt")')
    print,a, b
  endfor
end