Tcl
Tcl
CSV Set Column Name
Demonstrates how to set the name of a column in a CSV.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# We have the following CSV...
# permalink,company,numEmps,category,city,state,fundedDate,raisedAmt,raisedCurrency,round
# lifelock,LifeLock,,web,Tempe,AZ,1-May-07,6850000,USD,b
# mycityfaces,MyCityFaces,7,web,Scottsdale,AZ,1-Jan-08,50000,USD,seed
# flypaper,Flypaper,,web,Phoenix,AZ,1-Feb-08,3000000,USD,a
# infusionsoft,Infusionsoft,105,software,Gilbert,AZ,1-Oct-07,9000000,USD,a
# gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed
set bCrlf 1
set sb [new_CkStringBuilder]
CkStringBuilder_AppendLine $sb "permalink,company,numEmps,category,city,state,fundedDate,raisedAmt,raisedCurrency,round" $bCrlf
CkStringBuilder_AppendLine $sb "lifelock,LifeLock,,web,Tempe,AZ,1-May-07,6850000,USD,b" $bCrlf
CkStringBuilder_AppendLine $sb "mycityfaces,MyCityFaces,7,web,Scottsdale,AZ,1-Jan-08,50000,USD,seed" $bCrlf
CkStringBuilder_AppendLine $sb "flypaper,Flypaper,,web,Phoenix,AZ,1-Feb-08,3000000,USD,a" $bCrlf
CkStringBuilder_AppendLine $sb "infusionsoft,Infusionsoft,105,software,Gilbert,AZ,1-Oct-07,9000000,USD,a" $bCrlf
CkStringBuilder_AppendLine $sb "gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed" $bCrlf
set csv [new_CkCsv]
CkCsv_put_HasColumnNames $csv 1
set success [CkCsv_LoadFromString $csv [CkStringBuilder_getAsString $sb]]
# Get each column name..
set numCols [CkCsv_get_NumColumns $csv]
set i 0
while {$i < $numCols} {
puts [CkCsv_getColumnName $csv $i]
set i [expr $i + 1]
}
puts "---"
# Change the "numEmps" column name to "employeeCount"
set success [CkCsv_SetColumnName $csv 2 "employeeCount"]
set numCols [CkCsv_get_NumColumns $csv]
set i 0
while {$i < $numCols} {
puts [CkCsv_getColumnName $csv $i]
set i [expr $i + 1]
}
# Use the updated column name...
puts "---"
puts [CkCsv_getCellByName $csv 3 employeeCount]
# Output should be:
# permalink
# company
# numEmps
# category
# city
# state
# fundedDate
# raisedAmt
# raisedCurrency
# round
# ---
# permalink
# company
# employeeCount
# category
# city
# state
# fundedDate
# raisedAmt
# raisedCurrency
# round
# ---
# 105
delete_CkStringBuilder $sb
delete_CkCsv $csv