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
(Unicode C) CSV Append New RowDemonstrates how to append a new row to a CSV.
#include <C_CkStringBuilderW.h> #include <C_CkCsvW.h> void ChilkatSample(void) { BOOL success; BOOL bCrlf; HCkStringBuilderW sb; HCkCsvW csv; HCkCsvW 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 = CkStringBuilderW_Create(); CkStringBuilderW_AppendLine(sb,L"permalink,company,numEmps,category,city,state,fundedDate,raisedAmt,raisedCurrency,round",bCrlf); CkStringBuilderW_AppendLine(sb,L"lifelock,LifeLock,,web,Tempe,AZ,1-May-07,6850000,USD,b",bCrlf); CkStringBuilderW_AppendLine(sb,L"mycityfaces,MyCityFaces,7,web,Scottsdale,AZ,1-Jan-08,50000,USD,seed",bCrlf); CkStringBuilderW_AppendLine(sb,L"flypaper,Flypaper,,web,Phoenix,AZ,1-Feb-08,3000000,USD,a",bCrlf); CkStringBuilderW_AppendLine(sb,L"infusionsoft,Infusionsoft,105,software,Gilbert,AZ,1-Oct-07,9000000,USD,a",bCrlf); CkStringBuilderW_AppendLine(sb,L"gauto,gAuto,4,web,Scottsdale,AZ,1-Jan-08,250000,USD,seed",bCrlf); csv = CkCsvW_Create(); CkCsvW_putHasColumnNames(csv,TRUE); success = CkCsvW_LoadFromString(csv,CkStringBuilderW_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 = CkCsvW_Create(); success = CkCsvW_LoadFromString(csvTemp,L"yelp,Yelp,,web,San Francisco,CA,1-Jul-04,1000000,USD,a"); numCols = CkCsvW_getNumColumns(csvTemp); i = 0; row = CkCsvW_getNumRows(csv); while (i < numCols) { CkCsvW_SetCell(csv,row,i,CkCsvW_getCell(csvTemp,0,i)); i = i + 1; } // Show the updated CSV: wprintf(L"%s\n",CkCsvW_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 CkStringBuilderW_Dispose(sb); CkCsvW_Dispose(csv); CkCsvW_Dispose(csvTemp); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.