用的不知道谁写的还是导出来的一个叫做cell2000的控件,用一些InvokeHelper的方式操作excel文件,读取单元格文字函数如下
CString CCell2000::GetCellString(long col, long row, long sheet)
{
CString result;
static BYTE parms[] =
VTS_I4 VTS_I4 VTS_I4;
InvokeHelper(0x31, DISPATCH_METHOD, VT_BSTR, (void*)&result, parms,
col, row, sheet);
return result;
}如果单元格中出现°(度)这个符号,且文字中没有中文,度符号在末尾,则是读不出来的,比如"11°"返回的字符串只有"11"
有中文则全按宽字节取,度是-95 -29(excel文件中存储的是B0 00),正常显示,没有中文则全按单字节取,度是-80 (B0)
excel是用2007操作存储的2003格式xls文件,请问是什么原因
PS:InvokeHelper这些操作什么的啊,学名叫什么,是在整OLE什么的吗
CString CCell2000::GetCellString(long col, long row, long sheet)
{
CString result;
static BYTE parms[] =
VTS_I4 VTS_I4 VTS_I4;
InvokeHelper(0x31, DISPATCH_METHOD, VT_BSTR, (void*)&result, parms,
col, row, sheet);
return result;
}如果单元格中出现°(度)这个符号,且文字中没有中文,度符号在末尾,则是读不出来的,比如"11°"返回的字符串只有"11"
有中文则全按宽字节取,度是-95 -29(excel文件中存储的是B0 00),正常显示,没有中文则全按单字节取,度是-80 (B0)
excel是用2007操作存储的2003格式xls文件,请问是什么原因
PS:InvokeHelper这些操作什么的啊,学名叫什么,是在整OLE什么的吗
函数全部是automation生成的可以试试GetText
在你的excel.cpp中应该导出有这个函数
VARIANT Range::GetText()
{
VARIANT result;
InvokeHelper(0x8a, DISPATCH_PROPERTYGET, VT_VARIANT, (void*)&result, NULL);
return result;
}