C++实现对EXCEL文件操作
项目中,客户需要把将日志写入EXCEL表中,并且能够实现追加文本。本人用的解析库为BasicExcel,
有需要的小伙伴可以去网上下载。具体实现代码如下所示:
BasicExcel myExcel;
BasicExcelWorksheet* sheet;
myExcel.Load(filePath.c_str());
if(!b_isExist)
{
file.close();
myExcel.New(1);
sheet = myExcel.GetWorksheet((unsigned)0);
sheet->Rename(L"updataResult");
sheet->Cell(0,0)->SetString("vehicleVersion");
sheet->Cell(0,1)->SetString("updateDate");
sheet->Cell(0,2)->SetString("vehicleType");
sheet->Cell(0,3)->SetString("vinNumber");
sheet->Cell(0,4)->SetString("updataResult");
sheet->Cell(0,5)->SetString("ecuNameOfUpdatedSucceed");
sheet->Cell(0,6)->SetString("ecuNameOfUpdatedFailed");
}
sheet = myExcel.GetWorksheet((unsigned)0);
if(sheet)
{
int maxRows = sheet->GetTotalRows();
sheet->Cell(maxRows ,0)->SetString(vehicleVersion);
sheet->Cell(maxRows ,1)->SetString(updateDate);
sheet->Cell(maxRows ,2)->SetString(vehicleType);
sheet->Cell(maxRows ,3)->SetString(vinNumber);
sheet->Cell(maxRows ,4)->SetString(updataResult);
sheet->Cell(maxRows ,5)->SetString(ecuNameOfUpdatedSucceed);
sheet->Cell(maxRows ,6)->SetString(ecuNameOfUpdatedFailed);
}
myExcel.SaveAs(filePath.c_str());
strcpy(excelFilePath,filePath.c_str());