Encoding services. More...

Inherits System::Object.

Inherited by System::Text::ICUEncoding, and System::Text::UTF7Encoding.

Public Types

typedef System::SharedPtr< EncodingPtr
 Pointer type. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 

Public Member Functions

virtual ASPOSECPP_SHARED_API bool Equals (ptr obj) override
 
virtual ASPOSECPP_SHARED_API int GetHashCode () const override
 
virtual ASPOSECPP_SHARED_API int get_CodePage ()
 
virtual ASPOSECPP_SHARED_API int get_WindowsCodePage ()
 
virtual ASPOSECPP_SHARED_API String get_WebName ()
 
virtual ASPOSECPP_SHARED_API String get_BodyName ()
 
virtual ASPOSECPP_SHARED_API String get_EncodingName ()
 
virtual ASPOSECPP_SHARED_API String get_HeaderName ()
 
virtual ASPOSECPP_SHARED_API bool get_IsSingleByte ()
 
virtual ASPOSECPP_SHARED_API bool get_IsBrowserDisplay ()
 
virtual ASPOSECPP_SHARED_API bool get_IsBrowserSave ()
 
virtual ASPOSECPP_SHARED_API bool get_IsMailNewsDisplay ()
 
virtual ASPOSECPP_SHARED_API bool get_IsMailNewsSave ()
 
virtual ASPOSECPP_SHARED_API bool get_IsReadOnly ()
 
virtual ASPOSECPP_SHARED_API DecoderFallbackPtr get_DecoderFallback () const
 
virtual ASPOSECPP_SHARED_API void set_DecoderFallback (const DecoderFallbackPtr value)
 
virtual ASPOSECPP_SHARED_API const EncoderFallbackPtr get_EncoderFallback () const
 
virtual ASPOSECPP_SHARED_API void set_EncoderFallback (const EncoderFallbackPtr value)
 
virtual ASPOSECPP_SHARED_API int GetByteCount (const ArrayPtr< char_t > &chars, int index, int count)
 
virtual ASPOSECPP_SHARED_API int GetByteCount (const String &s)
 
virtual ASPOSECPP_SHARED_API int GetByteCount (const ArrayPtr< char_t > &chars)
 
virtual ASPOSECPP_SHARED_API int GetByteCount (const char_t *chars, int count)
 
virtual ASPOSECPP_SHARED_API int GetBytes (const ArrayPtr< char_t > &chars, int charIndex, int charCount, const ArrayPtr< uint8_t > &bytes, int byteIndex)
 
virtual ASPOSECPP_SHARED_API int GetBytes (const String &s, int charIndex, int charCount, const ArrayPtr< uint8_t > &bytes, int byteIndex)
 
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > GetBytes (const String &s)
 
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > GetBytes (const ArrayPtr< char_t > &chars, int index, int count)
 
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > GetBytes (const ArrayPtr< char_t > &chars)
 
virtual ASPOSECPP_SHARED_API int GetBytes (const char_t *chars, int charCount, uint8_t *bytes, int byteCount)
 
virtual ASPOSECPP_SHARED_API int GetCharCount (const ArrayPtr< uint8_t > &bytes, int index, int count)
 
virtual ASPOSECPP_SHARED_API int GetCharCount (const ArrayPtr< uint8_t > &bytes)
 
virtual ASPOSECPP_SHARED_API int GetCharCount (const uint8_t *bytes, int count)
 
virtual ASPOSECPP_SHARED_API int GetChars (const ArrayPtr< uint8_t > &bytes, int byteIndex, int byteCount, const ArrayPtr< char_t > &chars, int charIndex)
 
virtual ASPOSECPP_SHARED_API ArrayPtr< char_t > GetChars (const ArrayPtr< uint8_t > &bytes, int index, int count)
 
virtual ASPOSECPP_SHARED_API ArrayPtr< char_t > GetChars (const ArrayPtr< uint8_t > &bytes)
 
virtual ASPOSECPP_SHARED_API int GetChars (const uint8_t *bytes, int byteCount, char_t *chars, int charCount)
 
virtual ASPOSECPP_SHARED_API DecoderPtr GetDecoder ()
 
virtual ASPOSECPP_SHARED_API EncoderPtr GetEncoder ()
 
virtual ASPOSECPP_SHARED_API String GetString (uint8_t *bytes, int byteCount)
 
virtual ASPOSECPP_SHARED_API String GetString (const ArrayPtr< uint8_t > &bytes)
 
virtual ASPOSECPP_SHARED_API String GetString (const ArrayPtr< uint8_t > &bytes, int index, int count)
 
virtual ASPOSECPP_SHARED_API int GetMaxByteCount (int charCount)=0
 
virtual ASPOSECPP_SHARED_API int GetMaxCharCount (int byteCount)=0
 
virtual ASPOSECPP_SHARED_API SharedPtr< ObjectClone ()
 
virtual ASPOSECPP_SHARED_API ArrayPtr< uint8_t > GetPreamble ()
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API String ToString () ASPOSE_CONST
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Static Public Member Functions

static ASPOSECPP_SHARED_API ArrayPtr< uint8_t > Convert (const EncodingPtr &srcEncoding, const EncodingPtr &dstEncoding, const ArrayPtr< uint8_t > &bytes)
 
static ASPOSECPP_SHARED_API ArrayPtr< uint8_t > Convert (const EncodingPtr &srcEncoding, const EncodingPtr &dstEncoding, const ArrayPtr< uint8_t > &bytes, int index, int count)
 
static ASPOSECPP_SHARED_API EncodingPtr get_ASCII ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_BigEndianUnicode ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_Unicode ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_UTF8 ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_UTF8Unmarked ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_UTF32 ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_BigEndianUTF32 ()
 
static ASPOSECPP_SHARED_API EncodingPtr get_UTF7 ()
 
static ASPOSECPP_SHARED_API EncodingPtr GetEncoding (const String &name)
 
static ASPOSECPP_SHARED_API EncodingPtr GetEncoding (int codepage)
 
static ASPOSECPP_SHARED_API EncodingPtr GetEncoding (int codepage, const EncoderFallbackPtr &encoderFallback, const DecoderFallbackPtr &decoderFallback)
 
static ASPOSECPP_SHARED_API EncodingPtr GetEncoding (const String &name, const EncoderFallbackPtr &encoderFallback, const DecoderFallbackPtr &decoderFallback)
 
static ASPOSECPP_SHARED_API EncodingPtr get_Default ()
 
static ASPOSECPP_SHARED_API System::ArrayPtr< System::SharedPtr< EncodingInfo > > GetEncodings ()
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 

Protected Member Functions

ASPOSECPP_SHARED_API Encoding (int codePage_)
 
ASPOSECPP_SHARED_API void SetDefaultFallbacks ()
 Sets encoding and decoding fallbacks to default. More...
 

Protected Attributes

int codePage
 Codepage number. More...
 

Detailed Description

Encoding services.

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ Encoding()

ASPOSECPP_SHARED_API System::Text::Encoding::Encoding ( int  codePage_)
protected

Constructor.

Parameters
codePage_Codepage number.

Member Function Documentation

◆ Clone()

virtual ASPOSECPP_SHARED_API SharedPtr<Object> System::Text::Encoding::Clone ( )
virtual

Clones encoding object.

Returns
Encoding object clone.

◆ Convert() [1/2]

static ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::Convert ( const EncodingPtr srcEncoding,
const EncodingPtr dstEncoding,
const ArrayPtr< uint8_t > &  bytes 
)
static

Converts bytes between two encodings.

Parameters
srcEncodingSource encoding.
dstEncodingDestination encoding.
bytesBytes to convert.
Returns
Converted bytes.

◆ Convert() [2/2]

static ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::Convert ( const EncodingPtr srcEncoding,
const EncodingPtr dstEncoding,
const ArrayPtr< uint8_t > &  bytes,
int  index,
int  count 
)
static

Converts bytes between two encodings.

Parameters
srcEncodingSource encoding.
dstEncodingDestination encoding.
bytesBytes to convert.
indexSlice beginning.
countSlice size.
Returns
Converted bytes.

◆ Equals()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::Equals ( ptr  obj)
overridevirtual

Compares encodings.

Parameters
objObject to compare to.
Returns
True if both objects are of same encoding type, false otherwise.

Reimplemented from System::Object.

Reimplemented in System::Text::UTF7Encoding, System::Text::UTF32Encoding, System::Text::ICUEncoding, System::Text::UTF8Encoding, and System::Text::UnicodeEncoding.

◆ get_ASCII()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_ASCII ( )
static

Gets ASCII encoding.

Returns
ASCII encoding.

◆ get_BigEndianUnicode()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_BigEndianUnicode ( )
static

Gets the standard big-endian Unicode encoding object.

Returns
Big endian unicode encoding.

◆ get_BigEndianUTF32()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_BigEndianUTF32 ( )
static

Gets the standard big-endian UTF-32 encoding object.

Returns
Big-endian UTF-32 encoding.

◆ get_BodyName()

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::get_BodyName ( )
virtual

Gets mail agent body compatible encoding name.

Returns
Name of encoding.

◆ get_CodePage()

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::get_CodePage ( )
virtual

◆ get_DecoderFallback()

virtual ASPOSECPP_SHARED_API DecoderFallbackPtr System::Text::Encoding::get_DecoderFallback ( ) const
virtual

Gets decoder fallback.

Returns
Decoder fallback object.

◆ get_Default()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_Default ( )
static

Gets default encoding.

Returns
Encoding object.

◆ get_EncoderFallback()

virtual ASPOSECPP_SHARED_API const EncoderFallbackPtr System::Text::Encoding::get_EncoderFallback ( ) const
virtual

Gets encoder fallback.

Returns
Encoder fallback object.

◆ get_EncodingName()

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::get_EncodingName ( )
virtual

Gets human-readable encoding name.

Returns
Name of encoding.

Reimplemented in System::Text::UTF7Encoding, System::Text::UTF32Encoding, and System::Text::ICUEncoding.

◆ get_HeaderName()

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::get_HeaderName ( )
virtual

Gets mail agent header compatible encoding name.

Returns
Name of encoding.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsBrowserDisplay()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsBrowserDisplay ( )
virtual

Checks whether encoding can be used in browser to display content.

Returns
True if encoding can be used in browser to display content, false otherwise.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsBrowserSave()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsBrowserSave ( )
virtual

Checks whether encoding can be used in browser to save content.

Returns
True if encoding can be used in browser to save content, false otherwise.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsMailNewsDisplay()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsMailNewsDisplay ( )
virtual

Checks whether encoding can be used in mail client to display content.

Returns
True if encoding can be used in mail client to display content, false otherwise.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsMailNewsSave()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsMailNewsSave ( )
virtual

Checks whether encoding can be used in mail client to save content.

Returns
True if encoding can be used in mail client to save content, false otherwise.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsReadOnly()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsReadOnly ( )
virtual

Checks whether encoding is read-only.

Returns
True if encoding is read-only, false otherwise.

Reimplemented in System::Text::ICUEncoding.

◆ get_IsSingleByte()

virtual ASPOSECPP_SHARED_API bool System::Text::Encoding::get_IsSingleByte ( )
virtual

Checks whether encoding is single byte.

Returns
True if single character encodes into single byte, false otherwise.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ get_Unicode()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_Unicode ( )
static

Gets the standard Unicode encoding object.

Returns
Unicode encoding.

◆ get_UTF32()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_UTF32 ( )
static
Returns
UTF-32 encoding.

◆ get_UTF7()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_UTF7 ( )
static

Gets the standard UTF-7 encoding object.

Returns
UTF-7 encoding.

◆ get_UTF8()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_UTF8 ( )
static

Gets the standard UTF-8 encoding object.

Returns
UTF-8 encoding.

◆ get_UTF8Unmarked()

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::get_UTF8Unmarked ( )
static

Only internal, to be used by the class libraries: Unmarked and non-input-validating

Returns
Optimized UTF-8 encoding.

◆ get_WebName()

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::get_WebName ( )
virtual

Gets IANA-compatible encoding name.

Returns
Name of encoding.

Reimplemented in System::Text::UnicodeEncoding.

◆ get_WindowsCodePage()

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::get_WindowsCodePage ( )
virtual

Gets Windows codepage ID.

Returns
Codepage ID.

Reimplemented in System::Text::ICUEncoding.

◆ GetByteCount() [1/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetByteCount ( const ArrayPtr< char_t > &  chars,
int  index,
int  count 
)
virtual

Get the number of characters needed to encode a character buffer.

Parameters
charsCharacters buffer.
indexSlice begin.
countSlice size.
Returns
Required buffer size.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetByteCount() [2/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetByteCount ( const String s)
virtual

Get the number of characters needed to encode a string.

Parameters
sString to encode.
Returns
Required buffer size.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetByteCount() [3/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetByteCount ( const ArrayPtr< char_t > &  chars)
virtual

Get the number of characters needed to encode a character buffer.

Parameters
charsCharacters buffer.
Returns
Required buffer size.

Reimplemented in System::Text::ICUEncoding.

◆ GetByteCount() [4/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetByteCount ( const char_t *  chars,
int  count 
)
virtual

Get the number of characters needed to encode a character buffer.

Parameters
charsCharacters buffer.
countBuffer size.
Returns
Required buffer size.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetBytes() [1/6]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetBytes ( const ArrayPtr< char_t > &  chars,
int  charIndex,
int  charCount,
const ArrayPtr< uint8_t > &  bytes,
int  byteIndex 
)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
charsCharacters to encode.
charIndexCharacter slice beginning.
charCountNumber of characters to convert.
bytesBuffer to put characters to.
byteIndexOutput buffer offset.
Returns
Number of written bytes.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetBytes() [2/6]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetBytes ( const String s,
int  charIndex,
int  charCount,
const ArrayPtr< uint8_t > &  bytes,
int  byteIndex 
)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
sString to encode.
charIndexCharacter slice beginning.
charCountNumber of characters to convert.
bytesBuffer to put characters to.
byteIndexOutput buffer offset.
Returns
Number of written bytes.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetBytes() [3/6]

virtual ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::GetBytes ( const String s)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
sString to encode.
Returns
Buffer that holds representation of characters being encoded.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetBytes() [4/6]

virtual ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::GetBytes ( const ArrayPtr< char_t > &  chars,
int  index,
int  count 
)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
charsCharacters to encode.
indexCharacter slice beginning.
countNumber of characters to convert.
Returns
Buffer that holds representation of characters being encoded.

Reimplemented in System::Text::ICUEncoding.

◆ GetBytes() [5/6]

virtual ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::GetBytes ( const ArrayPtr< char_t > &  chars)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
charsCharacters to encode.
Returns
Buffer that holds representation of characters being encoded.

Reimplemented in System::Text::ICUEncoding.

◆ GetBytes() [6/6]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetBytes ( const char_t *  chars,
int  charCount,
uint8_t *  bytes,
int  byteCount 
)
virtual

Get the bytes that result from encoding a character buffer.

Parameters
charsCharacters to encode.
charCountNumber of characters to convert.
bytesBuffer to put characters to.
byteCountOutput buffer size.
Returns
Number of written bytes.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetCharCount() [1/3]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetCharCount ( const ArrayPtr< uint8_t > &  bytes,
int  index,
int  count 
)
virtual

Get the number of characters needed to decode a byte buffer.

Parameters
bytesBytes to decode.
indexSlice beginning.
countSlice size.
Returns
Number of characters.

Reimplemented in System::Text::ICUEncoding, and System::Text::UTF7Encoding.

◆ GetCharCount() [2/3]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetCharCount ( const ArrayPtr< uint8_t > &  bytes)
virtual

Get the number of characters needed to decode a byte buffer.

Parameters
bytesBytes to decode.
Returns
Number of characters.

Reimplemented in System::Text::ICUEncoding.

◆ GetCharCount() [3/3]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetCharCount ( const uint8_t *  bytes,
int  count 
)
virtual

Get the number of characters needed to decode a byte buffer.

Parameters
bytesBytes to decode.
countBytes count.
Returns
Number of characters.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetChars() [1/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetChars ( const ArrayPtr< uint8_t > &  bytes,
int  byteIndex,
int  byteCount,
const ArrayPtr< char_t > &  chars,
int  charIndex 
)
virtual

Get the characters that result from decoding a byte buffer.

Parameters
bytesBuffer to read bytes from.
byteIndexInput buffer offset.
byteCountInput buffer size.
charsBuffer to put characters to.
charIndexOutput buffer offset.
Returns
Number of written characters.

Reimplemented in System::Text::ICUEncoding, and System::Text::UTF7Encoding.

◆ GetChars() [2/4]

virtual ASPOSECPP_SHARED_API ArrayPtr<char_t> System::Text::Encoding::GetChars ( const ArrayPtr< uint8_t > &  bytes,
int  index,
int  count 
)
virtual

Get the characters that result from decoding a byte buffer.

Parameters
bytesBuffer to read bytes from.
indexInput buffer offset.
countInput buffer size.
Returns
Buffer of decoded characters.

Reimplemented in System::Text::ICUEncoding.

◆ GetChars() [3/4]

virtual ASPOSECPP_SHARED_API ArrayPtr<char_t> System::Text::Encoding::GetChars ( const ArrayPtr< uint8_t > &  bytes)
virtual

Get the characters that result from decoding a byte buffer.

Parameters
bytesBuffer to read bytes from.
Returns
Buffer of decoded characters.

Reimplemented in System::Text::ICUEncoding.

◆ GetChars() [4/4]

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetChars ( const uint8_t *  bytes,
int  byteCount,
char_t *  chars,
int  charCount 
)
virtual

Get the characters that result from decoding a byte buffer.

Parameters
bytesBuffer to read bytes from.
byteCountInput buffer size.
charsBuffer to put characters to.
charCountOutput buffer size.
Returns
Number of written characters.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ GetDecoder()

virtual ASPOSECPP_SHARED_API DecoderPtr System::Text::Encoding::GetDecoder ( )
virtual

Get a decoder that forwards requests to this object.

Returns
Newly created decoder.

Reimplemented in System::Text::ICUEncoding, and System::Text::UTF7Encoding.

◆ GetEncoder()

virtual ASPOSECPP_SHARED_API EncoderPtr System::Text::Encoding::GetEncoder ( )
virtual

Get an encoder that forwards requests to this object.

Returns
Newly created encoder.

Reimplemented in System::Text::ICUEncoding, and System::Text::UTF7Encoding.

◆ GetEncoding() [1/4]

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::GetEncoding ( const String name)
static

Gets encoding by name.

Parameters
nameEncoding name.
Returns
Encoding of specified name.

◆ GetEncoding() [2/4]

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::GetEncoding ( int  codepage)
static

Gets encoding by codepage.

Parameters
codepageCodepage number.
Returns
Encoding of specified codepage.

◆ GetEncoding() [3/4]

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::GetEncoding ( int  codepage,
const EncoderFallbackPtr encoderFallback,
const DecoderFallbackPtr decoderFallback 
)
static

Gets encoding by codepage.

Parameters
codepageCodepage number.
encoderFallbackFallback to use for encoding.
decoderFallbackFallback to use for decoding.
Returns
Encoding of specified codepage.

◆ GetEncoding() [4/4]

static ASPOSECPP_SHARED_API EncodingPtr System::Text::Encoding::GetEncoding ( const String name,
const EncoderFallbackPtr encoderFallback,
const DecoderFallbackPtr decoderFallback 
)
static

Gets encoding by name.

Parameters
nameEncoding name.
encoderFallbackFallback to use for encoding.
decoderFallbackFallback to use for decoding.
Returns
Encoding of specified name.

◆ GetEncodings()

static ASPOSECPP_SHARED_API System::ArrayPtr<System::SharedPtr<EncodingInfo> > System::Text::Encoding::GetEncodings ( )
static

Gets list of known encodings.

Returns
Array of encoding infos.

◆ GetHashCode()

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetHashCode ( ) const
overridevirtual

Hashes encoding.

Returns
Hash code.

Reimplemented from System::Object.

Reimplemented in System::Text::UTF7Encoding, System::Text::UTF8Encoding, System::Text::UTF32Encoding, and System::Text::UnicodeEncoding.

◆ GetMaxByteCount()

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetMaxByteCount ( int  charCount)
pure virtual

Get the maximum number of bytes needed to encode a specified number of characters.

Parameters
charCountNumber of characters to encode.
Returns
Number of bytes sufficient to encode any string of given character length.

Implemented in System::Text::ICUEncoding, System::Text::UTF7Encoding, System::Text::UnicodeEncoding, and System::Text::ASCIIEncoding.

◆ GetMaxCharCount()

virtual ASPOSECPP_SHARED_API int System::Text::Encoding::GetMaxCharCount ( int  byteCount)
pure virtual

Get the maximum number of characters needed to decode a specified number of bytes.

Parameters
byteCountNumber of bytes to decode.
Returns
Number of bytes sufficient to decode any string of given character length.

Implemented in System::Text::ICUEncoding, System::Text::UTF7Encoding, System::Text::UnicodeEncoding, and System::Text::ASCIIEncoding.

◆ GetPreamble()

virtual ASPOSECPP_SHARED_API ArrayPtr<uint8_t> System::Text::Encoding::GetPreamble ( )
virtual

Returns a sequence of bytes that denotes the encoding (e. g. BOM).

Returns
Bytes sequence preamble.

Reimplemented in System::Text::ICUEncoding, System::Text::UTF32Encoding, System::Text::UTF8Encoding, and System::Text::UnicodeEncoding.

◆ GetString() [1/3]

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::GetString ( uint8_t *  bytes,
int  byteCount 
)
virtual

Decodes a buffer of bytes into a string.

Parameters
bytesBuffer to read bytes from.
byteCountInput buffer size.
Returns
String of decoded characters.

Reimplemented in System::Text::ICUEncoding.

◆ GetString() [2/3]

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::GetString ( const ArrayPtr< uint8_t > &  bytes)
virtual

Decodes a buffer of bytes into a string.

Parameters
bytesBuffer to read bytes from.
Returns
String of decoded characters.

Reimplemented in System::Text::ICUEncoding.

◆ GetString() [3/3]

virtual ASPOSECPP_SHARED_API String System::Text::Encoding::GetString ( const ArrayPtr< uint8_t > &  bytes,
int  index,
int  count 
)
virtual

Decodes a buffer of bytes into a string.

Parameters
bytesBuffer to read bytes from.
indexInput buffer offset.
countInput buffer size.
Returns
String of decoded characters.

Reimplemented in System::Text::UTF7Encoding, and System::Text::ICUEncoding.

◆ set_DecoderFallback()

virtual ASPOSECPP_SHARED_API void System::Text::Encoding::set_DecoderFallback ( const DecoderFallbackPtr  value)
virtual

Sets decoder fallback.

Parameters
valueDecoder fallback object.

◆ set_EncoderFallback()

virtual ASPOSECPP_SHARED_API void System::Text::Encoding::set_EncoderFallback ( const EncoderFallbackPtr  value)
virtual

Sets encoder fallback.

Parameters
valueEncoder fallback object.

◆ SetDefaultFallbacks()

ASPOSECPP_SHARED_API void System::Text::Encoding::SetDefaultFallbacks ( )
protected

Sets encoding and decoding fallbacks to default.

Member Data Documentation

◆ codePage

int System::Text::Encoding::codePage
protected

Codepage number.