Summary
The NS_UTF16ToCString function converts the value of a nsAString instance from UTF-16 to the specified multi-byte encoding and stores the result in a nsACString instance.
  #include "nsStringAPI.h"
  nsresult NS_UTF16ToCString(
    const nsAString& aSrc,
    nsCStringEncoding aDestEncoding,
    nsACString& aDest
  );
Parameters
- aSrc
-  [in] A nsAStringinstance containing the source UTF-16 string to be converted. The source string should be encoded using the host byte order.
- aDestEncoding
-  [in] The character encoding of the destination string. See nsCStringEncodingfor the set of values that can be passed for this parameter.
- aDest
-  [out] A nsACStringinstance that will contain the result of the conversion.
Return Values
The NS_UTF16ToCString function returns NS_OK if successful. Otherwise, it returns an error code. The set of possible error codes is currently unspecified.
Example Code
  // Convert UTF-16 (or UCS-2) string to UTF-8
  void
  CopyUTF16toUTF8(const nsAString& in, nsACString& out)
  {
    NS_UTF16ToCString(in, NS_CSTRING_ENCODING_UTF8, out);
  }
History
This function was frozen for Mozilla 1.7. See bug bug 239123 for details.