我有兩個變量,比如說$ a,列表名稱爲& $ b隨着年齡,當我嘗試重定向到csv時,它創建csv,但$ a & $ b都落入相同的行而不是不同的,我怎樣才能將它們分成兩個不同的行?如何使用tcl創建csv文件
puts $outfile "$b_1 \t$c"
set outfile [open "result_table_sort.csv" w+]
我有兩個變量,比如說$ a,列表名稱爲& $ b隨着年齡,當我嘗試重定向到csv時,它創建csv,但$ a & $ b都落入相同的行而不是不同的,我怎樣才能將它們分成兩個不同的行?如何使用tcl創建csv文件
puts $outfile "$b_1 \t$c"
set outfile [open "result_table_sort.csv" w+]
創建CSV文件的推薦方法是使用Tcllib中的csv
package。它爲你處理各種棘手的邊緣情況,所以你不必這樣做。
package require csv
set outfile [open "thing.csv" w]
foreach aRow $a bRow $b {
puts $outfile [csv::join [list $aRow $bRow]]
}
close $outfile
只要通過\t
作爲分隔符csv::join
切換到生產製表符分隔的輸出:
puts $outfile [csv::join [list $aRow $bRow] "\t"]
另外考慮使用csv::joinlist
和csv::joinmatrix
命令。他們都可以一次構建一個表格,第一個表格作爲列表列表(行列表,第一行包含列表列表),第二列表格作爲矩陣(在Tcllib中的struct::matrix
package中定義的結構)。
發現把逗號之間的兩個變量解決了我的問題解決....
puts $outfile "$b_1,\t$c"
set outfile [open "result_table_sort.csv" w+]
不包? – CLEX420