我想知道是否有办法使用一堆包含值的.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(我的简单例子),它让我有点疯狂。
答案 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