Sample code for 30+ languages & platforms
Visual FoxPro

CSV Insert Column

See more CSV Examples

Insert a new column into an existing CSV.

Note: This example requires Chilkat v9.5.0.89 or greater because the InsertColumn method was added in v9.5.0.89.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loCsv
LOCAL lnCol
LOCAL lnWeightColumn

lnSuccess = 0

loCsv = CreateObject('Chilkat.Csv')

* Load the following CSV:

*  Name;City;Weight
*  John;Chicago;180
*  Lisa;Denver;120

* Indicate that the 1st line contains column names.
loCsv.HasColumnNames = 1
lnSuccess = loCsv.LoadFile("qa_data/csv/insertColumnTest.csv")

* We can insert a column before the 1st column.
loCsv.InsertColumn(0)

? loCsv.SaveToString()

* The CSV now looks like this:

*  ;Name;City;Weight
*  ;John;Chicago;180
*  ;Lisa;Denver;120

* Set the cells in column 0.

lnCol = 0
loCsv.SetColumnName(lnCol,"id")
loCsv.SetCell(0,lnCol,"100")
loCsv.SetCell(1,lnCol,"101")

? loCsv.SaveToString()

* We now have:

*  id;Name;City;Weight
*  100;John;Chicago;180
*  101;Lisa;Denver;120

* Insert a new column between City and Weight
* In other words, add a new column before the Weight column.
lnWeightColumn = loCsv.GetIndex("Weight")
? "Weight Column Index = " + STR(lnWeightColumn)
loCsv.InsertColumn(lnWeightColumn)

? loCsv.SaveToString()

* We now have:

*  id;Name;City;;Weight
*  100;John;Chicago;;180
*  101;Lisa;Denver;;120

* Set the cells in the new column:

loCsv.SetColumnName(lnWeightColumn,"Height")
loCsv.SetCell(0,lnWeightColumn,'6' 2"')
loCsv.SetCell(1,lnWeightColumn,'5' 7"')

? loCsv.SaveToString()

* We now have:

*  id;Name;City;Height;Weight
*  100;John;Chicago;"6' 2""";180
*  101;Lisa;Denver;"5' 7""";120

RELEASE loCsv