以下是加载xls/xlsx文件的代码:
int main()
{
BookHandle book = xlCreateBook();
if(book)
{
if(xlBookLoad(book, L"Slice.xlsx"))
{
SheetHandle sheet = xlBookGetSheet(book, 0);
if(sheet)
{
double d;
const wchar_t* s = xlSheetReadStr(sheet, 2, 1, 0);
if(s) wprintf(L"%sn", s);
d = xlSheetReadNum(sheet, 3, 1, 0);
printf("%gn", d);
}
}
xlBookRelease(book);
}
printf("nPress any key to exit...");
_getch();
return 0;
}
这些实际上是示例代码。则CCD_ 1失败从而跳过if语句。
但是,如果我加载它自己的文件example1.xls,它就成功了。Slice.xlsx和example.xls位于同一文件夹中。我100%确信文件路径是正确的。加载功能失败了。
现在,我不知道为什么。那是因为Slice.xlsx有点特别吗?或者LibXL不是加载它的工具?如果是,我该怎么读?
我把它附在这里。事先非常感谢任何能提供帮助的人。
切片.xlsx:
https://dl.dropboxusercontent.com/u/7949206/Slice.xlsx
文档中指出,应使用xlCreateBook
处理*.xls文件,使用xlCreateXMLBook
处理*.xlsx文件。因此,对于Slice.xlsx,使用xlCreateXMLBook
代替xlCreateBook
。http://www.libxl.com/documentation.html