在TCL中向文件写入多行
我希望修改gpsfeed+,添加一个部分,在模拟器运行时将导航字符串写入文本文件。这个工具是用tcl编写的,我不知道我需要做什么。到目前为止,我得到的是:在TCL中向文件写入多行,tcl,Tcl,我希望修改gpsfeed+,添加一个部分,在模拟器运行时将导航字符串写入文本文件。这个工具是用tcl编写的,我不知道我需要做什么。到目前为止,我得到的是: if {$prefs(udp) & $::udpOn} { # opens file to write strings to set fp [open "input_NAV.txt" w+] # one sentence per udp packet foreach line [split $::out
if {$prefs(udp) & $::udpOn} {
# opens file to write strings to
set fp [open "input_NAV.txt" w+]
# one sentence per udp packet
foreach line [split $::out \n] {
puts $fp $line
}
close $fp
}
现在,如果UDP广播被打开,我想通过UDP接收每个导航字符串广播,并将其写入一个文件。但是上面的代码只写入其中的1个字符串,然后覆盖该字符串。我一直在尝试添加a/n开关,但没有任何乐趣。我使用了错误的模式打开文件: 打开文件进行读写。如果存在,则截断它。如果不存在,请创建一个新文件 我本应使用以下任一项: a仅打开文件进行写入。如果文件不存在,请创建一个新的空文件。在每次写入之前,将文件指针设置为文件的结尾
a+打开文件进行读写。如果文件不存在,请创建一个新的空文件。将初始访问位置设置为文件的结尾。我使用了错误的模式打开文件: 打开文件进行读写。如果存在,则截断它。如果不存在,请创建一个新文件 我本应使用以下任一项: a仅打开文件进行写入。如果文件不存在,请创建新的空文件。在每次写入之前,将文件指针设置为文件的结尾
a+打开文件进行读写。如果文件不存在,请创建一个新的空文件。将初始访问位置设置为文件的结尾。这可能是一条注释,但格式不同 此代码:
foreach line [split $::out \n] {
puts $fp $line
}
相当于:
puts $fp $::out
这将是一个注释,但格式不同 此代码:
foreach line [split $::out \n] {
puts $fp $line
}
相当于:
puts $fp $::out
r+
也可能是合适的a+
在编写时具有(近似)仅附加语义。r+
可能也适用<代码>a+在编写时具有(近似)仅附加语义。