EasyXLS

How to convert CSV file to Excel in C++.NET

/*---------------------------------------------------------------------
 | Tutorial 39
 |
 | This tutorial shows how to convert CSV file to Excel in C++.NET. The
 | CSV file generated by Tutorial 30 is imported, some data is modified
 | and after that is exported as Excel file.
 ----------------------------------------------------------------------*/

#include "stdafx.h"

using namespace System;
using namespace EasyXLS;
using namespace System::Data;
using namespace System::IO;

int main()
{
    Console::WriteLine("Tutorial 39\n----------\n");

    // Create an instance of the class used to import/export Excel files
    ExcelDocument ^workbook = gcnew ExcelDocument();

    // Import CSV file
    Console::WriteLine("Reading file C:\\Samples\\Tutorial30.csv.\n");
    if (workbook->easy_LoadCSVFile("C:\\Samples\\Tutorial30.csv")) 
    {
        // Set worksheet name
        workbook->easy_getSheetAt(0)->setSheetName("First tab");

        // Add new worksheet and add some data in cells (optional step)
        workbook->easy_addWorksheet("Second tab");
        ExcelWorksheet ^xlsSecondTab = safe_cast<ExcelWorksheet^>(workbook->easy_getSheetAt(1));
        ExcelTable ^xlsTable = xlsSecondTab->easy_getExcelTable();

        xlsTable->easy_getCell("A1")->setValue("Data added by Tutorial39");
        for (int column=0; column<5; column++)
        {
            xlsTable->easy_getCell(1, column)->setValue(String::Concat("Data ", (column + 1).ToString()));
        }

        // Export Excel file
        Console::WriteLine("Writing file C:\\Samples\\Tutorial39 - convert CSV to Excel.xlsx.");
        workbook->easy_WriteXLSXFile("C:\\Samples\\Tutorial39 - convert CSV to Excel.xlsx");

        // Confirm conversion of CSV to Excel
        String ^sError = workbook->easy_getError();
        if (sError->Equals(""))
            Console::Write("\nFile successfully created. Press Enter to Exit...");
        else
            Console::Write(String::Concat("\nError encountered: ", sError, "\nPress Enter to Exit..."));
    }
    else
    {
        Console::WriteLine(String::Concat("\nError reading file C:\\Samples\\Tutorial30.csv \n", 
            workbook->easy_getError(), "\nPress Enter to Exit..."));
    }

    // Dispose memory
    delete workbook;

    Console::ReadLine();

    return 0;
}


C++ without .NET Framework
This tutorial is valid for C++ applications that can use .NET Framework. For applications that does not have .NET Framework integrated, a similar code sample is available.

EasyXLS Excel libraries:

.NET
Excel Library for C++.NET
full .NET version to import, export or convert Excel files
Download EasyXLS™ Excel Library for C++.NET

File formats:

MS Excel 97 - 2003
MS Excel 2007 - 2010
MS Excel 2013
MS Excel 2016
MS Excel 2019
XLSXXLSMXLSBXLS
XMLHTMLCSVTXT