Poco

class UnicodeConverter

Library: Foundation
Package: Text
Header: Poco/UnicodeConverter.h

Description

A convenience class that converts strings from UTF-8 encoded std::strings to UTF-16 or UTF-32 encoded std::wstrings and vice-versa.

This class is mainly used for working with the Unicode Windows APIs and probably won't be of much use anywhere else ???

Member Summary

Member Functions: UTFStrlen, convert, to, toUTF16, toUTF32, toUTF8

Member Functions

UTFStrlen static inline

template < typename T > static std::size_t UTFStrlen(
    const T * ptr
);

Returns the length (in characters) of a zero-terminated UTF string.

convert static

static void convert(
    const std::string & utf8String,
    UTF32String & utf32String
);

Converts the given UTF-8 encoded string into an UTF-32 encoded wide string.

convert static

static void convert(
    const char * utf8String,
    std::size_t length,
    UTF32String & utf32String
);

Converts the given UTF-8 encoded character sequence into an UTF-32 encoded wide string.

convert static

static void convert(
    const char * utf8String,
    UTF32String & utf32String
);

Converts the given zero-terminated UTF-8 encoded character sequence into an UTF-32 encoded wide string.

convert static

static void convert(
    const std::string & utf8String,
    UTF16String & utf16String
);

Converts the given UTF-8 encoded string into an UTF-16 encoded wide string.

convert static

static void convert(
    const char * utf8String,
    std::size_t length,
    UTF16String & utf16String
);

Converts the given UTF-8 encoded character sequence into an UTF-16 encoded wide string.

convert static

static void convert(
    const char * utf8String,
    UTF16String & utf16String
);

Converts the given zero-terminated UTF-8 encoded character sequence into an UTF-16 encoded wide string.

convert static

static void convert(
    const UTF16String & utf16String,
    std::string & utf8String
);

Converts the given UTF-16 encoded wide string into an UTF-8 encoded string.

convert static

static void convert(
    const UTF32String & utf32String,
    std::string & utf8String
);

Converts the given UTF-32 encoded wide string into an UTF-8 encoded string.

convert static

static void convert(
    const UTF16Char * utf16String,
    std::size_t length,
    std::string & utf8String
);

Converts the given zero-terminated UTF-16 encoded wide character sequence into an UTF-8 encoded string.

convert static

static void convert(
    const UTF32Char * utf16String,
    std::size_t length,
    std::string & utf8String
);

Converts the given zero-terminated UTF-32 encoded wide character sequence into an UTF-8 encoded string.

convert static

static void convert(
    const UTF16Char * utf16String,
    std::string & utf8String
);

Converts the given UTF-16 encoded zero terminated character sequence into an UTF-8 encoded string.

convert static

static void convert(
    const UTF32Char * utf32String,
    std::string & utf8String
);

Converts the given UTF-32 encoded zero terminated character sequence into an UTF-8 encoded string.

to static inline

template < typename T > static T to(
    const char * pChar
);

to static inline

template < typename T > static T to(
    const std::string & str
);

toUTF16 static inline

template < typename F, typename T > static void toUTF16(
    const F & f,
    T & t
);

toUTF16 static inline

template < typename F, typename T > static void toUTF16(
    const F & f,
    std::size_t l,
    T & t
);

toUTF32 static inline

template < typename F, typename T > static void toUTF32(
    const F & f,
    T & t
);

toUTF32 static inline

template < typename F, typename T > static void toUTF32(
    const F & f,
    std::size_t l,
    T & t
);

toUTF8 static inline

template < typename F, typename T > static void toUTF8(
    const F & f,
    T & t
);

toUTF8 static inline

template < typename F, typename T > static void toUTF8(
    const F & f,
    std::size_t l,
    T & t
);