zoukankan      html  css  js  c++  java
  • VS将数据保存在excel表格中

    参考链接转载自: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");

    另外第三方库的链接中有提供样例和源码,样例很明了。建议代码上有什么语法问题可以参考一下。

  • 相关阅读:
    利用web前端综合制作一个注册功能
    使用 kubeadm 快速部署一个 Kubernetes 集群
    部署一套完整的Kubernetes高可用集群(二进制,最新版v1.18)下
    ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'gitee.com...'
    fatal: unable to access 'https://gitee.com/...': Could not resolve host: gitee.com
    Qt学生管理系统
    Qt5.14.2生成qsqlmysql.lib
    express框架实现数据库CRUD操作
    链表常见的题型和解题思路
    2 引用
  • 原文地址:https://www.cnblogs.com/KeepThreeMunites/p/13941368.html
Copyright © 2011-2022 走看看