JavaEar 专注于收集分享传播有价值的技术资料

libxml2 questions about xmlChar*

I'm using libxml2. All function are working with xmlChar*. I found that xmlChar is an unsigned char.

So I have some questions about how to work with it.

1) For example if I working with utf-16 or utf-32 file how libxml2 process it and returns xmlChar in function? Will I lose some characters then??

2) If I want to do something with this string, should I cast it to char* or wchar_t* and how??

Will I lose some characters?


  1. xmlChar is for handling UTF-8 encoding only.

    So, to answer your questions:

    1. No, you won't loose any characters if using UTF-16 or UTF-32. Just use iconv or any other library to encode your UTF-16 or UTF-32 data before passing it to the API.

    2. Do not just "cast" the string. Convert them if needed in some other encoding.