Sample code for 30+ languages & platforms
PureBasic

CSV Column Names

See more CSV Examples

Demonstrates how to access CSV column names.

The Chilkat CSV library/component/class is freeware. The downloads for .NET, C++, Perl, Java, Ruby, and Python contain all of the Chilkat classes, some of which are freeware and some of which require licensing.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkCsv.pb"

Procedure ChilkatExample()

    success.i = 0

    ; This example program loads a file (sample.csv)
    ; that contains this content:
    ; 
    ; year,color,country,food
    ; 2001,red,France,cheese
    ; 2005,blue,"United States",hamburger
    ; 2008,green,Italy,pasta
    ; 1998,orange,Japan,sushi
    ; 
    ; The first row contains the column names.
    ; This file is available at:
    ; http://www.chilkatsoft.com/testData/sample.csv

    csv.i = CkCsv::ckCreate()
    If csv.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ; Prior to loading the CSV file, indicate that the 1st row
    ; should be treated as column names:
    CkCsv::setCkHasColumnNames(csv, 1)

    ; Load the CSV records from the file:

    success = CkCsv::ckLoadFile(csv,"sample.csv")
    If success <> 1
        Debug CkCsv::ckLastErrorText(csv)
        CkCsv::ckDispose(csv)
        ProcedureReturn
    EndIf

    ; Display the column names:
    i.i
    colName.s
    idx.i
    For i = 0 To CkCsv::ckNumColumns(csv) - 1
        colName = CkCsv::ckGetColumnName(csv,i)
        Debug Str(i) + ": " + colName

        ; The following line demonstrates to to get the column
        ; index given a column name:
        idx = CkCsv::ckGetIndex(csv,colName)
        Debug colName + " is at column index " + Str(idx)
    Next


    CkCsv::ckDispose(csv)


    ProcedureReturn
EndProcedure