- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 IOS 的 libxl 示例项目,我试图在包中打开一个现有的 xls 文件
BookHandle book = xlCreateBook();
xlBookLoad(book,"Beta-1.xls");
SheetHandle sheet = xlBookGetSheet(book,0);
NSLog(@"%@",sheet);
它总是返回 null,谁能告诉我哪里出错了,或者这是否可能。
是否有任何替代方案,我花了好几个小时寻找,必须与 IOS 兼容。
最佳答案
针对这个旧线程发帖以供引用,并专门回答使用 LibXL 读取 XLS 或 XLSX 格式文件的问题。下面的代码演示了如何使用 LibXL 读取 excel 文件并打印每个单元格的内容(值)和类型(数字、字符串、 bool ...)。
// Get the path to the excel file to be opened
NSString *path = [[NSBundle mainBundle] pathForResource:@"FILE_NAME" ofType:@"xlsx"];
// Convert the path into a const char * from an NSString
const char *file = [path cStringUsingEncoding:NSASCIIStringEncoding];
// Create a handle for the excel book (XLSX)
// Use xlCreateBook() for XLS file format
BookHandle book = xlCreateXMLBook();
xlBookLoad(book, file);
// Authorize full use of the library (uncomment below and change values)
//xlBookSetKey(book, "REGISTERED_NAME", "PROVIDED_KEY");
// Determine if the excel file handle is valid
if(xlBookLoad(book, file)){
// We have the book now get the first sheet in the book
SheetHandle sheet = xlBookGetSheet(book, 0);
// Ensure the sheet has been opened as is valid
if(sheet){
// Get the first and last rows of the sheet (determines the length of the parse)
for (int row = xlSheetFirstRow(sheet); row < xlSheetLastRow(sheet); ++row){
// Get the first and last columns of the sheet (determines width of the parse)
for (int col = xlSheetFirstCol(sheet); col < xlSheetLastCol(sheet); ++col){
// When reading the cell pull the type (bool, int, string...)
enum CellType cellType = xlSheetCellType(sheet, row, col);
FormatHandle format = xlSheetCellFormat(sheet, row, col);
NSLog(@"(row = %i, col = %i) = ", row, col);
// Determine if the cell has a formula or is a value w/ format
if (xlSheetIsFormula(sheet, row, col)){
const char* s = xlSheetReadFormula(sheet, row, col, &format);
NSLog(@"%s %s", (s ? s : "null"), "[formula]");
} else{
// The cell is not a formula therefore print the value and type
switch(cellType){
case CELLTYPE_EMPTY: NSLog(@"%s", "[empty]"); break;
case CELLTYPE_NUMBER:{
double d = xlSheetReadNum(sheet, row, col, &format);
NSLog(@"%f %s", d, "[number]");
break;
}
case CELLTYPE_STRING:{
const char* s = xlSheetReadStr(sheet, row, col, &format);
NSLog(@"%s %s", (s ? s : "null"), "[string]");
break;
}
case CELLTYPE_BOOLEAN:{
bool b = xlSheetReadBool(sheet, row, col, &format);
NSLog(@"%s %s", (b ? "true" : "false"), "[boolean]");
break;
}
case CELLTYPE_BLANK: NSLog(@"%s", "[blank]"); break;
case CELLTYPE_ERROR: NSLog(@"%s", "[error]"); break;
}
}
NSLog(@"\n");
}
}
}
}
xlBookRelease(book);
关于c++ - 打开现有的 Excel 文件 libxl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13549683/
我正在尝试在 libXL 中使用自定义颜色,我注意到图书馆里大约有 80 种基本颜色,有谁知道如何使用此库为单元格设置自定义颜色,因为文档中没有任何与之相关的信息。 现在我尝试执行以下操作: $do
这是加载 xls/xlsx 文件的代码: int main() { BookHandle book = xlCreateBook(); if(book) { i
好的。所以我使用 libXL 来解析 .xlsx 文件。我遇到了一个奇怪的错误,因为当我调用 sheet->readNum(row, col) 函数时,它会完成它的工作,但只有 45-47 次。我检查
我从官方网站安装了 libxl 包文件。它在 include_cpp 文件夹中包含头文件,在 libs 文件夹中包含 libxl.lib。我正在使用 QT(cpp) 来运行我的项目。我能够将 libx
我正在处理 libXL 和 Office365 的问题。我用 Office 365 创建了一个 Excel 文件:一个简单的公式,它显示了另一个工作表中单元格的内容。然后我继续通过libXl 在那个源
使用 IOS 的 libxl 示例项目,我试图在包中打开一个现有的 xls 文件 BookHandle book = xlCreateBook(); xlBookLoad(book,"Beta-1.x
我正在尝试将西里尔字符写入在 OSX 应用程序中生成的电子表格中: sheet = xlBookAddSheet(book, "Output", 0); detailFormat = xlBookAd
我正在尝试在 CodeBlocks 上使用名为 LibXL[for C++] 的第三方库为我的 Mini 项目执行此代码。 #include "libxl.h" #include #include
我正在尝试在 Windows 上构建 PHP 以及用于 Excel 操作的流行 C 库,LibXL .这个库有一个原生的基于 PHP 对象的扩展名为 php_excel .我正在尝试将后者构建为 Wi
我尝试使用来自 Perl 6(最新版本)的 libXL 和 NativeCall . 我无法让 utf-8 正确保存创建的 xlsx 文件。 只有 CArray[uint16]似乎工作,也没有编码 S
我有多个 .xls (~100MB) 文件,我想将多个工作表(从每个工作表)作为数据框加载到 R 中。我试过各种功能,如xlsx::xlsx2和 XLConnect::readWorksheetFro
我打算制作一个应用程序,其数据源来自 Excel 文件。所以基本上期望的结果是使我的应用程序数据与 Excel 文件同步。我搜索并找到了 libxls,这似乎是一个解决方案? 我下载了用于 xCode
我正在致力于通过 PHP 将大量数据从 Excel 导入/导出 MySQL。我有一个可行的解决方案,但它占用大量内存且速度很慢。 我看到一位开发人员制作了一个包含 libXL 的 Unix 构建 PH
在我的 iOS 应用程序中,我想生成 excel(.xlsm) 文件。我使用了 libXl 库。( http://www.libxl.com/ )这个库可以支持Excel 97 -2003格式(xls
我正在尝试编写一个使用 libXL 的 QT 应用程序,但是当我尝试编译时,我收到一个弹出框,上面写着“在启动过程中程序以代码 0xc0000135 退出”。我已经确定是哪一行导致了问题,它是 sta
这是在框架 header 中声明的签名: const char* XLAPIENTRY xlSheetReadStrA(SheetHandle handle, int row, int col, Fo
我想读取网站 Link 中 Excel 文件的第 1 张数据。使用 Excel 文件的 url。我使用的是 Windows 10 R 3.6.1。 我正在尝试使用 Read Excel file fr
我试过在 VC9 上编译 PHP 扩展 php_excel (v1.0.0) 但没有成功,有人能提供指导吗?我已经使用在网上找到的注释来编译其他 PHP 扩展作为引用,但是有很多未知数,我不是 C 开
我是一名优秀的程序员,十分优秀!