Sample code for 30+ languages & platforms
PowerBuilder

CSV Get Column Names

Demonstrates how to get the names of columns in a CSV.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
long li_Success
long li_BCrlf
oleobject loo_Sb
oleobject loo_Csv
long li_NumCols
long i

li_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

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())

//  Get each column name..
li_NumCols = loo_Csv.NumColumns
i = 0
do while i < li_NumCols
    Write-Debug loo_Csv.GetColumnName(i)
    i = i + 1
loop

//  Output should be:

//  permalink
//  company
//  numEmps
//  category
//  city
//  state
//  fundedDate
//  raisedAmt
//  raisedCurrency
//  round


destroy loo_Sb
destroy loo_Csv