Tcl写入最后一行的textfile

时间:2016-05-25 07:34:02

标签: file tcl tk data-manipulation

如果用户通过对话框单击“是”,我想完成现有的文本文件。 实际代码会覆盖现有文件!

set answer [tk_messageBox -message "file already exists, do you want to add more?" -title "Configuration Check" -type yesno -parent .example1]
    case $answer {
    yes {
     set fid [open $::filename2/testfile.txt w]
     puts $fid "last row"
    close $fid 

有任何想法转到最后一行并完成文件吗?

最好的问候

1 个答案:

答案 0 :(得分:2)

您正在使用w的访问权限打开文件,如果该文件存在则会截断该文件,如果该文件不存在则会创建该文件。您需要做的是打开文件,访问aa+,第一个打开现有文件并定位文件,以便您在结束时写入,第二个执行相同但创建文件,如果它不存在。

set fid [open $::filename2/testfile.txt a+]

可能是你需要的。

或者查看seektell命令,这些命令允许您更改已打开文件中的位置,