2016-11-07 514 views
0

我有兩個變量,比如說$ a,列表名稱爲& $ b隨着年齡,當我嘗試重定向到csv時,它創建csv,但$ a & $ b都落入相同的行而不是不同的,我怎樣才能將它們分成兩個不同的行?如何使用tcl創建csv文件

puts $outfile "$b_1 \t$c" 
    set outfile [open "result_table_sort.csv" w+] 

回答

0

創建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::joinlistcsv::joinmatrix命令。他們都可以一次構建一個表格,第一個表格作爲列表列表(行列表,第一行包含列表列表),第二列表格作爲矩陣(在Tcllib中的struct::matrix package中定義的結構)。

+0

不包? – CLEX420

0

發現把逗號之間的兩個變量解決了我的問題解決....

puts $outfile "$b_1,\t$c" 
    set outfile [open "result_table_sort.csv" w+]