Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#C# UWP/WinRTDataFlexDelphi ActiveXDelphi DLLVisual FoxProJavaLianjaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerBuilderPowerShellPureBasicPythonRubySQL ServerSwiftTclUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET UWP/WinRTVBScriptXojo PluginNode.js

C Examples

Async
Certificates
ECC
Email Object
Encryption
FTP
HTML-to-XML/Text
Gzip
HTTP
IMAP
JSON
MHT / HTML Email
PEM
PFX/P12
Java KeyStore (JKS)
POP3
RSA Encryption
MIME
REST
SCP
SMTP
Socket/SSL/TLS
SSH Key
SSH
SFTP
Stream
Tar Archive
XML
XMP
Zip

More Examples...
Google APIs
Google Cloud Storage
Azure Cloud Storage
Amazon S3 (new)
Google Drive
ASN.1
PRNG
Amazon S3
Bounced Email
CSV
Diffie-Hellman
DKIM / DomainKey
DSA
NTLM
QuickBooks

 

 

 

 

 

 

 

(C) CSV Special Chars - Comma, Double-Quotes

The Chilkat CSV class/component automatically handles special characters which include double-quotes, and the delimiter character (comma or semicolon).

The Chilkat CSV library/component/class is freeware. The downloads for .NET, C++, Perl, Java, Ruby, and Python contain all of the Chilkat classes, some of which are freeware and some of which require licensing.

Chilkat C/C++ Library Downloads

MS Visual C/C++

Linux/CentOS/Heroku C/C++

MAC OS X C/C++

C++ Builder

Solaris C/C++

iOS C/C++

Android C/C++

Raspberry Pi C/C++

Windows Mobile 5.0/Pocket PC 2003

ARM Embedded Linux C/C++

PowerLinux C/C++

FreeBSD C/C++

MinGW C/C++

#include <C_CkCsv.h>

void ChilkatSample(void)
    {
    HCkCsv csv;
    BOOL success;
    const char *csvDoc;

    //  This example program loads a file (sample.csv)
    //  that contains this content:
    // 
    //  year,color,country,food
    //  2001,red,France,cheese
    //  2005,blue,"United States",hamburger
    //  2008,green,Italy,pasta
    //  1998,orange,Japan,sushi
    // 
    //  The first row contains the column names.
    //  This file is available at:
    //  http://www.chilkatsoft.com/testData/sample.csv

    csv = CkCsv_Create();

    //  Prior to loading the CSV file, indicate that the 1st row
    //  should be treated as column names:
    CkCsv_putHasColumnNames(csv,TRUE);

    //  Load the CSV records from the file:

    success = CkCsv_LoadFile(csv,"sample.csv");
    if (success != TRUE) {
        printf("%s\n",CkCsv_lastErrorText(csv));
        CkCsv_Dispose(csv);
        return;
    }

    //  A field may contain the delimiter character (in this case
    //  the delimiter is a comma):
    //  Change "cheese" to "cheese,baguette"
    //  ("cheese" is at row=0, column=3
    CkCsv_SetCell(csv,0,3,"cheese,baguette");

    //  A field may also contain double-quotes:
    //  Change blue to shiny "metallic" blue
    CkCsv_SetCell(csv,1,1,"shiny \"metallic\" blue");

    //  Write the updated CSV to a string and display:

    csvDoc = CkCsv_saveToString(csv);
    printf("%s\n",csvDoc);

    //  Save the CSV to a file:
    success = CkCsv_SaveFile(csv,"out.csv");
    if (success != TRUE) {
        printf("%s\n",CkCsv_lastErrorText(csv));
    }

    //  The out.csv contains this:
    //  year,color,country,food
    //  2001,red,France,"cheese,baguette"
    //  2005,"shiny ""metallic"" blue","United States",hamburger
    //  2008,green,Italy,pasta
    //  1998,orange,Japan,sushi


    CkCsv_Dispose(csv);

    }

 

© 2000-2016 Chilkat Software, Inc. All Rights Reserved.