OpenM++ runtime library (libopenm)
|
UTF-8 converter public interface. More...
Public Member Functions | |
virtual | ~IUtf8Converter (void) noexcept=0 |
release convertor resources. | |
virtual string | next (long long i_size, const char *i_text)=0 |
convert next portion of input text bytes into UTF-8 string. More... | |
Static Public Member Functions | |
static IUtf8Converter * | create (CharCvtFrom i_from, const char *i_codePageName=nullptr) |
create new converter instance by specified conversion type. More... | |
UTF-8 converter public interface.
|
static |
create new converter instance by specified conversion type.
[in] | i_from | conversion source encoding name, ie: utf16Le. |
[in] | i_codePageName | if conversion type is explicitPage then code page (encoding name) must be specified, ie: English_US.1252 |
HelperException | throw exception if conversion not supported. |
Windows: conversion from UTF-32 not supported for Windows and throws exception.
Linux: conversion throws exception if encoding not supported or iconv return an error.
|
pure virtual |
convert next portion of input text bytes into UTF-8 string.
Implemented in Utf8CopyConverter, DefaultPageConverter, ExpicitPageConverter, Utf16LePageConverter, and Utf16BePageConverter.