Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) CSV Insert ColumnSee more CSV ExamplesInsert 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.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Csv; ... procedure TForm1.Button1Click(Sender: TObject); var csv: HCkCsv; success: Boolean; col: Integer; weightColumn: Integer; begin csv := CkCsv_Create(); // Load the following CSV: // Name;City;Weight // John;Chicago;180 // Lisa;Denver;120 // Indicate that the 1st line contains column names. CkCsv_putHasColumnNames(csv,True); success := CkCsv_LoadFile(csv,'qa_data/csv/insertColumnTest.csv'); // We can insert a column before the 1st column. CkCsv_InsertColumn(csv,0); Memo1.Lines.Add(CkCsv__saveToString(csv)); // The CSV now looks like this: // ;Name;City;Weight // ;John;Chicago;180 // ;Lisa;Denver;120 // Set the cells in column 0. col := 0; CkCsv_SetColumnName(csv,col,'id'); CkCsv_SetCell(csv,0,col,'100'); CkCsv_SetCell(csv,1,col,'101'); Memo1.Lines.Add(CkCsv__saveToString(csv)); // 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. weightColumn := CkCsv_GetIndex(csv,'Weight'); Memo1.Lines.Add('Weight Column Index = ' + IntToStr(weightColumn)); CkCsv_InsertColumn(csv,weightColumn); Memo1.Lines.Add(CkCsv__saveToString(csv)); // We now have: // id;Name;City;;Weight // 100;John;Chicago;;180 // 101;Lisa;Denver;;120 // Set the cells in the new column: CkCsv_SetColumnName(csv,weightColumn,'Height'); CkCsv_SetCell(csv,0,weightColumn,'6'' 2"'); CkCsv_SetCell(csv,1,weightColumn,'5'' 7"'); Memo1.Lines.Add(CkCsv__saveToString(csv)); // We now have: // id;Name;City;Height;Weight // 100;John;Chicago;"6' 2""";180 // 101;Lisa;Denver;"5' 7""";120 CkCsv_Dispose(csv); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.