libiconv使用小例子

2021-04-18 05:34:12 字數 506 閱讀 7305

最近用到一點轉碼的東西,在網上搜到乙個libiconv,使用了一下感覺還可以,不過還是有一兩處容易犯錯的地方,除錯了半天才搞明白,此處是乙個將utf-8轉換為gbk的小例子:

std::string convfromutf8(std::string s)

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;

}

其中為轉換後的字串設定的buffer長度為轉換前字串長度的2倍,不知道是否合理,不過應該是夠用了。

交叉編譯使用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...