在TCL中,当像这样在回车符上加入列表时:
set myList {{a} {b} {c} {d} {e} {f} {g}}
puts [join $myList \r]
打印到屏幕上的输出是:
g
如果我改为执行以下操作:
set myList {{a} {b} {c} {d} {e} {f} {g}}
puts [join $myList \n]
输出为
a
b
c
d
e
f
g
什么使连接中的使用回车符返回“ \ r”只产生“ g”而使用换行符“ \ n”却给了我列表中的所有内容?
这与输出有关,而不是与Tcl join
有关。您的输出(例如,控制台/外壳)可能无法显示回车。
例如,如果您这样做:
set myList {{a} {b} {c} {d} {e} {f} {g}}
set result [join $myList \r]
puts [string length $result]
您得到13作为输出,表明字符串是正确的。
例如,如果您可以将输出位置更改为文本文件,然后在可以将回车识别为表示行更改的字符的编辑器中打开文件(我使用notepad ++进行了测试),输出很好。