栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++ MFC中使用libxl读入excel数据时需要wchar

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++ MFC中使用libxl读入excel数据时需要wchar

MFC中读入excel数据时需要wchar_t *str转换为CString,在读入过程中,我先直接使用下面的代码:

	CString cstring(sheet->readStr(row, col));

在运行时,很奇怪,可以读出前2/3的数据,但是从第264个数据后就全是""无效的,其实我的excel后面还有值,不应该是空值。

解决方法

根据libxl的官方文档,
const wchar_t* readStr(int row, int col, Format** format = 0)
Reads a string and its format from the cell. Don’t release a return pointer manually. Copy a return value to your memory buffer or variable immediately if neccessary.

可能不能直接对return的指针进行强制转换,因此我修改代码如下:

const wchar_t *pwstr = sheet->readStr(row, col);
CString cstring(pwstr);

得到的值的结果就是正常的了,264后面的也能读到。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/429950.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号