最近用到一點轉碼的東西,在網上搜到乙個libiconv,使用了一下感覺還可以,不過還是有一兩處容易犯錯的地方,除錯了半天才搞明白,此處是乙個將utf-8轉換為gbk的小例子:
std::string convfromutf8(std::string s)其中為轉換後的字串設定的buffer長度為轉換前字串長度的2倍,不知道是否合理,不過應該是夠用了。size_t inlen=s.size();
const char* inbuf=s.c_str();
size_t outlen=inlen*2;
std::string result(outlen,0);
char* outbuf=(char*)result.c_str();
int n=iconv(cd,&inbuf,&inlen,&outbuf,&outlen);
iconv_close(cd);
if (n==-1)
return result;
}
交叉編譯使用libiconv
一 環境 虛擬機器 ubuntu 16.04 交叉編譯工具 二 編譯安裝 1 configure prefix usr local libiconv amba install host armv7l timesys linux gnueabi cc home iflytek dyye toolcha...
學習使用libiconv庫
libiconv庫是乙個基於gnu協議的開源庫,主要是解決多語言編碼處理轉換等應用問題。怎樣學習使用libiconv庫?對於剛接觸到人來說,這篇文章不妨去看一看,若已經用到過該庫的人,在應用的過程中可能遇到一些問題,我們可以一起來 我的 是 cnangel gmail.com 幾個函式原型 icon...
xpath使用小例子
要解析的xml檔案 檔名e.xml harry potter 29.99 learning xml 39.95 python指令碼 usr bin env python coding utf8from lxml import etreefrom xml.etree import elementtre...