VC2005中System::String转换为std::string

王朝vc·作者佚名  2007-05-03
窄屏简体版  字體: |||超大  

今天在做一个划词的程序,用了sqlite做词库,词在存进去的时候,用的是ANSI编码,可是从textbox里读出来的是unicode编码,为了这个转换,我忙了两天了,现在终于解决了,写在这里,为以后用,以为后来的同志们做一个例程了!

std::string ConvertToString(System::String^ str)

{

int q=(int)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(str);

char* p=(char*)q;

return std::string(p);

}

其实主要是为了unicode到ansi的转换,在QQ群上问的时候,有人很诧异,问我为什么要做这个转换,要做c++/cli就不要用本地的东西了嘛,谁让咱放不下c++呢,再说了,这个c++/cli还真不习惯,先这么着吧。只是用用罢了。总觉得c++/cli还不成熟,等再发两个版本再说吧。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航