熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

VC2005中System::String轉換為std::string

2013-11-13 10:02:04  來源: .NET編程 

  今天在做一個劃詞的程序用了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還不成熟等再發兩個版本再說吧


From:http://tw.wingwit.com/Article/program/net/201311/12333.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.