Tcl 如何在文件中写入?

Tcl 如何在文件中写入?,tcl,proc,Tcl,Proc,我想在文件中这样写: set fh [open $tmpFileName w] puts $fh "set a [create_object]" puts $fh "$a proc1_inside_a" puts $fh "$a proc2_inside_a" close $fh can't read "a": no such variable 但是它会得到错误消息,因为执行tmpFileName文件时会创建一个变量。我得到的错误如下: set fh [open $tmpFileName w

我想在文件中这样写:

set fh [open $tmpFileName w]
puts $fh "set a [create_object]"
puts $fh "$a proc1_inside_a"
puts $fh "$a proc2_inside_a"
close $fh
can't read "a": no such variable
但是它会得到错误消息,因为执行
tmpFileName
文件时会创建一个
变量。我得到的错误如下:

set fh [open $tmpFileName w]
puts $fh "set a [create_object]"
puts $fh "$a proc1_inside_a"
puts $fh "$a proc2_inside_a"
close $fh
can't read "a": no such variable

你能帮我解决这个问题吗?

你只需要使用不同的报价机制。双引号允许命令和变量替换。大括号将保持其内容一字不差(禁止替换)

文件如下:

  • Tcl的非常少——比较规则4和规则6
  • 第5课和第6课适用

您想在文件中写入什么?
create\u object
[create\u object]
的值?[创建对象]在这种情况下,您应该转义
[
。可以使用
{}
\
+1括起整个字符串,但我自己可能会将其作为一个多行文字来编写…