中文字符串如何转为char*
我使用BasicExcel导入一个中文命名的excel文件的时候,发现是无法导入的,因为BasicExcel不能很好支持中文,当文件是英文或数字的时候就可以导入成功。BasicExcel的Load函数如下:
bool BasicExcel::Load(const char* filename)
{
if (file_.IsOpen()) file_.Close();
if (file_.Open(filename))
{
workbook_ = Workbook();
worksheets_.clear();
vector<char> data;
file_.ReadFile("Workbook", data);
Read(&*(data.begin()), data.size());
UpdateYExcelWorksheet();
return true;
}
else return false;
}
我只知道有两种办法可以解决:
1是讲中文字符串转为char*类型,似乎不可能实现
2就是改写Load函数,将参数设置为wchar_t类型。但是我不懂得如何修改函数体。求高手帮忙。
bool BasicExcel::Load(const char* filename)
{
if (file_.IsOpen()) file_.Close();
if (file_.Open(filename))
{
workbook_ = Workbook();
worksheets_.clear();
vector<char> data;
file_.ReadFile("Workbook", data);
Read(&*(data.begin()), data.size());
UpdateYExcelWorksheet();
return true;
}
else return false;
}
我只知道有两种办法可以解决:
1是讲中文字符串转为char*类型,似乎不可能实现
2就是改写Load函数,将参数设置为wchar_t类型。但是我不懂得如何修改函数体。求高手帮忙。
...全文
相关推荐
char*转为LPCWSTR
char*转为LPCWSTR,在UNICODE环境下通常使用的是双字节,LPCWSTR类型是其中之一。VS2008就是UNICODE环境,而VC++6.0则是ASCI环境
QString与char *的相互转换
1.QString 转换为 char * 将 QString 转 char *,需要用到 QByteArray 类 。因为 char * 最后都有一个'\0'作为结束符,而采用 QString::toLatin1() 时会在字符串后面加上'\0'。(1).中文字符串转char*:#include &lt;QTextCodec&gt; QTextCodec::setCodecForTr(QT...
const char*转LPCWSTR 字符串转换
一种windows下const char*转LPCWSTR的方法演示
CString和char[]、 char*互转
CString和char[]、 char*互转
分析C++中char*和char[]的区别
深入分析C++中char*和char[]的区别,分析的十分透彻,对于新手、高手都适用。


