参考链接转载自:https://blog.csdn.net/qq_28093585/article/details/78836821
我使用的第三方库是
ExcelFormat Library: https://www.codeproject.com/Articles/42504/ExcelFormat-Library
软件版本:VS2013
使用方法:
将源文件中的BasicExcel.cpp、BasicExcel.hpp、ExcelFormat.cpp、ExcelFormat.h直接加入到工程中。
此时编译项目会报一个错误
解决办法:
第一步:
第二步:
然后就可以正常调用这个第三方库的源文件了。
下面的代码是简单的创建一个Excel表格,将数据保存到一个名为Test.xls文件。
我是将代码分为了四个部分,分别放在不同的位置。不可直接copy编译,可能会有未知的问题。
// Part1 #include "ExcelFormat.h" using namespace ExcelFormat; // save data into excel file at selected position // 将数据保存到选定位置的excel文件中 BasicExcel xls; BasicExcelWorksheet* sheet = NULL; BasicExcelCell* cell = NULL; int RowNum = 1; // 标题在第一行,数据从第二行开始保存,所以这里value为1而不是0 // Part2 // create sheet 1 and get the associated BasicExcelWorksheet pointer // 创建工作表1并获取关联的BasicExcelWorksheet指针 xls.New(1); sheet = xls.GetWorksheet(0); XLSFormatManager fmt_mgr(xls); // 设置Excel表格中的字体 ExcelFont font_bold; font_bold._weight = FW_BOLD; // 700 CellFormat fmt_bold(fmt_mgr); fmt_bold.set_font(font_bold); int col = 0, row = 0; //写入第一行,也就是表头 cell = sheet->Cell(row, col); cell->Set("序号"); cell->SetFormat(fmt_bold); ++col; cell = sheet->Cell(row, col); cell->Set("altitude"); cell->SetFormat(fmt_bold); ++col; cell = sheet->Cell(row, col); cell->Set("longitude"); cell->SetFormat(fmt_bold); ++col; cell = sheet->Cell(row, col); cell->Set("latitude"); cell->SetFormat(fmt_bold); col = 0; // Part3 int col = 0; sheet->Cell(RowNum, col)->Set(RowNum); ++col; sheet->Cell(RowNum, col)->Set(p->altitude); ++col; sheet->Cell(RowNum, col)->Set(p->longitude); ++col; sheet->Cell(RowNum, col)->Set(p->latitude); RowNum++; // Part4 xls.SaveAs("Test.xls");
另外第三方库的链接中有提供样例和源码,样例很明了。建议代码上有什么语法问题可以参考一下。