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 Set Cell by Index or NameDemonstrates how to update the value of a CSV cell, or add new cells.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Csv, StringBuilder; ... procedure TForm1.Button1Click(Sender: TObject); var success: Boolean; bCrlf: Boolean; sb: HCkStringBuilder; csv: HCkCsv; row_idx: Integer; begin // 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 bCrlf := True; sb := CkStringBuilder_Create(); CkStringBuilder_AppendLine(sb,'permalink,company,numEmps,category,city,state,fundedDate,raisedAmt,raisedCurrency,round',bCrlf); CkStringBuilder_AppendLine(sb,'lifelock,LifeLock,,web,Tempe,AZ,1-May-07,6850000,USD,b',bCrlf); CkStringBuilder_AppendLine(sb,'mycityfaces,MyCityFaces,7,web,Scottsdale,AZ,1-Jan-08,50000,USD,seed',bCrlf); CkStringBuilder_AppendLine(sb,'flypaper,Flypaper,,web,Phoenix,AZ,1-Feb-08,3000000,USD,a',bCrlf); CkStringBuilder_AppendLine(sb,'infusionsoft,Infusionsoft,105,software,Gilbert,AZ,1-Oct-07,9000000,USD,a',bCrlf); CkStringBuilder_AppendLine(sb,'gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed',bCrlf); csv := CkCsv_Create(); CkCsv_putHasColumnNames(csv,True); success := CkCsv_LoadFromString(csv,CkStringBuilder__getAsString(sb)); // Update the city "Gilbert" to "Tuscon". CkCsv_SetCell(csv,3,4,'Tuscon'); // Add a new row. row_idx := CkCsv_getNumRows(csv); CkCsv_SetCellByName(csv,row_idx,'permalink','yelp'); CkCsv_SetCellByName(csv,row_idx,'company','Yelp'); CkCsv_SetCellByName(csv,row_idx,'numEmps',''); CkCsv_SetCellByName(csv,row_idx,'category','web'); CkCsv_SetCellByName(csv,row_idx,'city','San Francisco'); CkCsv_SetCellByName(csv,row_idx,'state','CA'); CkCsv_SetCellByName(csv,row_idx,'fundedDate','1-Jul-04'); CkCsv_SetCellByName(csv,row_idx,'raisedAmt','1000000'); CkCsv_SetCellByName(csv,row_idx,'raisedCurrency','USD'); CkCsv_SetCellByName(csv,row_idx,'round','a'); // Show the updated CSV: Memo1.Lines.Add(CkCsv__saveToString(csv)); // Output should be: // 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,Tuscon,AZ,1-Oct-07,9000000,USD,a // gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed // yelp,Yelp,,web,San Francisco,CA,1-Jul-04,1000000,USD,a CkStringBuilder_Dispose(sb); CkCsv_Dispose(csv); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.