#pragma once #include "iPlugin_global.h" class ExcelEngine; // 对Excel应用的再次封装 class I_PLUGIN_EXPORT ExcelUtils { public: ExcelUtils(); ~ExcelUtils(); public: /// @brief Excel数据加载至VVec bool loadExcel(VVecVariant& vvecData, QStringList* pVecTitles, QString& sFile, \ QString& sLog, \ int nRowFrom = 1, int nColFrom = 1, \ int nSheetIndex = 1, QString sSheetName = ""); /// @brief VVec数据存至Excel bool saveExcel(VVecVariant vvecData, QStringList* pVecTitles, QString& sFile, \ QString& sLog, \ int nRowFrom = 1, int nColFrom = 1, \ int nSheetIndex = 1, QString sSheetName = ""); /// @brief 检测(或复制)Excel文件 static bool checkExcelFile(QString sFile, QString& sLog); /// @brief 获取得到Excel所有Sheet名称(仅仅用于数据加载时,下拉Sheet名称) /// @note取完即关闭(有点得不偿失) static bool getAllSheets(QString sFile, QStringList& list); protected: // 根据不同平台选择不同的引擎 bool makesureExcelEngine(QString& sError); private: ExcelEngine* m_pExcelEngine; };