本文整理汇总了C++中UnicodeString::toUTF32方法的典型用法代码示例。如果您正苦于以下问题:C++ UnicodeString::toUTF32方法的具体用法?C++ UnicodeString::toUTF32怎么用?C++ UnicodeString::toUTF32使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnicodeString
的用法示例。
在下文中一共展示了UnicodeString::toUTF32方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
int32_t toUChar32(UnicodeString& u, UChar32 *c, UErrorCode& status)
{
#if U_ICU_VERSION_HEX >= 0x04020000
return u.toUTF32(c, 1, status);
#else
int32_t len = u.length();
if (len >= 1)
*c = u.char32At(0);
return len;
#endif
}
示例2: ICUStrToWx
wxString ICUStrToWx(const UnicodeString& us)
{
int32_t cap = us.length() + 1;
boost::scoped_array<wchar_t> wbuff(new wchar_t[cap]);
UErrorCode errcode = U_ZERO_ERROR;
#ifdef __WXMSW__
int32_t len = us.extract(wbuff.get(), cap, errcode);
#else
int32_t len = us.toUTF32((UChar32 *)wbuff.get(), cap, errcode);
#endif
if(errcode == U_ZERO_ERROR)
return wxString((wxChar*)wbuff.get(), len);
return wxString();
}
示例3: decompose
int decompose(const char* text, wchar_t* wcs_buf, uint buf_size)
{
// UTF-8 to UCS4
auto str = UnicodeString::fromUTF8(StringPiece(text));
// UCS4 to NFD
auto status = U_ZERO_ERROR;
UnicodeString result;
Normalizer::normalize(str, UNORM_NFD, 0, result, status);
if (U_FAILURE(status))
{
cerr << "can't decompose a UTF8 string, "
<< status << ": " << u_errorName(status) << endl;
return -1;
}
result.toUTF32((UChar32*) wcs_buf, buf_size, status);
return 0;
}