BasicExcel API介绍

一个用STL C++写的读写Excel文件的类,是CSpreadSheet作者封装的,与CSpreadSheet的区别:不依赖ODBC,而CSpreadSheet依赖ODBC,需要MFC库的支持,不能跨平台。

BasicExcel的限制:

1)不支持格式化;

2)不支持公式;

3)不支持图表;

4)不支持Unicode UTF-32;

5)中文支持不好;

class BasicExcel

void New(int sheets=3)

创建一个新工作薄,默认3张工作表

bool Load(const char* filename)

载入一个已存在的工作薄文件

bool Save()

保存当前工作薄到已载入文件

bool SaveAs(const char* filename)

保存当前工作薄到一个新文件

size_t GetTotalWorkSheets()

获取当前工作薄的工作表数目

BasicExcelWorksheet* GetWorksheet(size_t sheetIndex)

BasicExcelWorksheet* GetWorksheet(const char* name)

BasicExcelWorksheet* GetWorksheet(const wchar_t* name)

获取指定索引的工作表对象,索引从0开始,索引无效则返回值为NULL

获取指定名称的工作表对象,名称无效则返回值为NULL

BasicExcelWorksheet* AddWorksheet(int sheetIndex=-1)

BasicExcelWorksheet* AddWorksheet(const char* name, int sheetIndex=-1)

BasicExcelWorksheet* AddWorksheet(const wchar_t* name, int sheetIndex=-1)

添加指定索引的工作表,名称默认为SheetX,X从1开始,如果sheetIndex==-1,则默认添加到最后一个位置

添加指定名称和索引的工作表,如果sheetIndex==-1,则默认添加到最后一个位置

bool DeleteWorksheet(size_t sheetIndex)

bool DeleteWorksheet(const char* name)

bool DeleteWorksheet(const wchar_t* name)

删除指定索引或名称的工作表

char* GetAnsiSheetName(size_t sheetIndex)

wchar_t* GetUnicodeSheetName(size_t sheetIndex)

bool GetSheetName(size_t sheetIndex, char* name)

bool GetSheetName(size_t sheetIndex, wchar_t* name)

获取指定索引的工作表名称

bool RenameWorksheet(size_t sheetIndex, const char* to)

bool RenameWorksheet(size_t sheetIndex, const wchar_t* to)

bool RenameWorksheet(const char* from, const char* to)

bool RenameWorksheet(const wchar_t* from, const wchar_t* to)

重命名指定索引或名称的工作表

class BasicExcelWorksheet

char* GetAnsiSheetName()

wchar_t* GetUnicodeSheetName()

bool GetSheetName(char* name)

bool GetSheetName(wchar_t* name)

获取当前工作表的名称

bool Rename(const char* to)

bool Rename(const wchar_t* to)

重命名当前工作表

void Print(ostream& os, char delimiter=',', char textQualifier='\0')

输出整张工作表到指定输出流,指定列分隔字符和文本限定符

指定列分隔符为','和文本限定符为'\"',该函数可以用来保存当前工作表为CSV格式

size_t GetTotalRows()

获取当前工作表的总行数

size_t GetTotalCols()

获取当前工作表的总列数

BasicExcelCell* Cell(size_t row, size_t col)

获取指定行、列的单元格对象,行、列值从0开始,如果行值超过65535或者列值超过255则返回NULL

bool EraseCell(size_t row, size_t col)

清空指定行、列的单元格对象的内容

class BasicExcelCell

int Type() const

获取单元格值类型,包括以下值:UNDEFINEDINTDOUBLESTRINGWSTRING

bool Get(int& val) const

bool Get(double& val) const

bool Get(char* str) const

bool Get(wchar_t* str) const

从当前单元格获取指定类型的内容

size_t GetStringLength()

获取当前单元格字符串长度

int GetInteger() const

double GetDouble() const

const char* GetString() const

const wchar_t* GetWString() const

从当前单元格获取指定类型的内容

ostream& operator<<(ostream& os, const BasicExcelCell& cell)

输出当前单元格内容到输出流中

void Set(int val)

void Set(double val)

void Set(const char* str)

void Set(const wchar_t* str)

输出指定格式的内容到当前单元格

void SetInteger(int val)

void SetDouble(double val)

void SetString(const char* str)

void SetWString(const wchar_t* str)

输出指定格式的内容到当前单元格

void EraseContents()

清空当前单元格的内容

猜你喜欢

转载自blog.csdn.net/hellokandy/article/details/82992010
今日推荐