PowerBuilder
PowerBuilder
CSV Append a Column with Values
See more CSV Examples
Append an additional column and initialize with a value.Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
integer li_BCrlf
oleobject loo_Sb
oleobject loo_Csv
integer li_NumColumns
integer li_NumRows
integer li_ColumnIdx
integer i
li_Success = 0
// First initialize the CSV with content.
// 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
li_BCrlf = 1
loo_Sb = create oleobject
li_rc = loo_Sb.ConnectToNewObject("Chilkat.StringBuilder")
if li_rc < 0 then
destroy loo_Sb
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_Sb.AppendLine("permalink,company,numEmps,category,city,state,fundedDate,raisedAmt,raisedCurrency,round",li_BCrlf)
loo_Sb.AppendLine("lifelock,LifeLock,,web,Tempe,AZ,1-May-07,6850000,USD,b",li_BCrlf)
loo_Sb.AppendLine("mycityfaces,MyCityFaces,7,web,Scottsdale,AZ,1-Jan-08,50000,USD,seed",li_BCrlf)
loo_Sb.AppendLine("flypaper,Flypaper,,web,Phoenix,AZ,1-Feb-08,3000000,USD,a",li_BCrlf)
loo_Sb.AppendLine("infusionsoft,Infusionsoft,105,software,Gilbert,AZ,1-Oct-07,9000000,USD,a",li_BCrlf)
loo_Sb.AppendLine("gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed",li_BCrlf)
loo_Csv = create oleobject
li_rc = loo_Csv.ConnectToNewObject("Chilkat.Csv")
loo_Csv.HasColumnNames = 1
li_Success = loo_Csv.LoadFromString(loo_Sb.GetAsString())
// Show the initial CSV:
Write-Debug loo_Csv.SaveToString()
Write-Debug "----"
// Now let's add a new rightmost column.
li_NumColumns = loo_Csv.NumColumns
li_NumRows = loo_Csv.NumRows
// Set the column name.
li_ColumnIdx = li_NumColumns
loo_Csv.SetColumnName(li_ColumnIdx,"new_column")
// Add the column to each row.
i = 0
do while i < li_NumRows
loo_Csv.SetCell(i,li_ColumnIdx,"newData")
i = i + 1
loop
// Show the updated CSV:
Write-Debug loo_Csv.SaveToString()
destroy loo_Sb
destroy loo_Csv