EasyXLS

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

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

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

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

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

    // Import HTML file
    Console::WriteLine("Reading file C:\\Samples\\Tutorial31.html.\n");
    if (workbook->easy_LoadHTMLFile("C:\\Samples\\Tutorial31.html"))
    {
        // 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 Tutorial40");
        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\\Tutorial40 - convert HTML to Excel.xlsx.");
        workbook->easy_WriteXLSXFile("C:\\Samples\\Tutorial40 - convert HTML to Excel.xlsx");

        // Confirm conversion of HTML 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\\Tutorial31.html \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 - 2019
MS Excel 2021
Office 365
XLSXXLSMXLSBXLS
XMLHTMLCSVTXT