|
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. | |
Static Public Member Functions | |
| static IUtf8Converter * | create (CharCvtFrom i_from, const char *i_codePageName=nullptr) |
| create new converter instance by specified conversion type. | |
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.