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
(C) CSV Append New RowDemonstrates how to append a new row to a CSV.
#include <C_CkStringBuilder.h> #include <C_CkCsv.h> void ChilkatSample(void) { BOOL success; BOOL bCrlf; HCkStringBuilder sb; HCkCsv csv; HCkCsv csvTemp; int numCols; int i; int row; // 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)); // Let's say we want to append the following row: // yelp,Yelp,,web,San Francisco,CA,1-Jul-04,1000000,USD,a // If we have the row as-is, we could do this: csvTemp = CkCsv_Create(); success = CkCsv_LoadFromString(csvTemp,"yelp,Yelp,,web,San Francisco,CA,1-Jul-04,1000000,USD,a"); numCols = CkCsv_getNumColumns(csvTemp); i = 0; row = CkCsv_getNumRows(csv); while (i < numCols) { CkCsv_SetCell(csv,row,i,CkCsv_getCell(csvTemp,0,i)); i = i + 1; } // Show the updated CSV: printf("%s\n",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,Gilbert,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); CkCsv_Dispose(csvTemp); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.