鱼C论坛

 找回密码
 立即注册
查看: 468|回复: 2

[已解决]libxl--readStr

[复制链接]
发表于 2023-6-19 16:02:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
        Book* book1 = xlCreateXMLBook();

        
        if (!book1) {
                ExitProcess(0);
        }

        book1->setKey(L"libxl", L"windows-28232b0208c4ee0369ba6e68abv6v5i3");//注册

        book1->load(_T("D:\\bb\\ex.xlsx")); //读取excel文件

        Sheet* sheet1 = book1->getSheet(0);//获取指定序号的表

        CString str;
        const wchar_t* p;
        if (sheet1) {
                 p= sheet1->readStr(1, 2); //读取字符串
                str.Format(_T("%s"), p);
                ::OutputDebugString(str);
        }

        



        book1->release();




我的问题:执行p= sheet1->readStr(1, 2) 之后,p为NULL    ??
最佳答案
2023-6-19 17:53:26
根据您提供的代码,无法准确判断为什么 `p` 变量的值为 `NULL`。可能原因包括:

- Excel 文件中在第 1 行第 2 列没有字符串数据
- 在 `sheet1->readStr(1, 2)` 执行之前出现了错误,可能是文件不存在、文件格式不正确等
- libxl 库的版本过旧或不完整,导致读取 Excel 文件时出现问题

为确定问题所在,您可以参考以下建议:

1. 检查 Excel 文件

确保 Excel 文件中在第 1 行第 2 列确实有纯文本内容。也可以尝试使用其他单元格的位置读取数据,如果能够正常读取,则说明该单元格数据为空。

2. 检查函数调用

使用调试器检查程序流程,或者在代码中添加一些输出语句(如 `printf()` 或 `MessageBox()` 函数),以确定在 `sheet1->readStr(1, 2)` 函数调用前后的情况。

3. 确认 libxl 的版本和完整性

确保使用的 libxl 库的版本较新且完整。可以考虑重新下载、编译并安装库文件。如果使用的是第三方提供的库,则需要确认其来源和稳定性。

总之,问题出在哪里需要进行详细的排查。通过以上方法,您应该能够找到并解决该问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-6-19 17:53:26 | 显示全部楼层    本楼为最佳答案   
根据您提供的代码,无法准确判断为什么 `p` 变量的值为 `NULL`。可能原因包括:

- Excel 文件中在第 1 行第 2 列没有字符串数据
- 在 `sheet1->readStr(1, 2)` 执行之前出现了错误,可能是文件不存在、文件格式不正确等
- libxl 库的版本过旧或不完整,导致读取 Excel 文件时出现问题

为确定问题所在,您可以参考以下建议:

1. 检查 Excel 文件

确保 Excel 文件中在第 1 行第 2 列确实有纯文本内容。也可以尝试使用其他单元格的位置读取数据,如果能够正常读取,则说明该单元格数据为空。

2. 检查函数调用

使用调试器检查程序流程,或者在代码中添加一些输出语句(如 `printf()` 或 `MessageBox()` 函数),以确定在 `sheet1->readStr(1, 2)` 函数调用前后的情况。

3. 确认 libxl 的版本和完整性

确保使用的 libxl 库的版本较新且完整。可以考虑重新下载、编译并安装库文件。如果使用的是第三方提供的库,则需要确认其来源和稳定性。

总之,问题出在哪里需要进行详细的排查。通过以上方法,您应该能够找到并解决该问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-20 08:15:03 | 显示全部楼层
sfqxx 发表于 2023-6-19 17:53
根据您提供的代码,无法准确判断为什么 `p` 变量的值为 `NULL`。可能原因包括:

- Excel 文件中在第 1  ...

我感觉都不是你说的问题    你加我微信   我传给你   你帮忙看看  13116140007
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-26 14:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表