Utf8ToOemBuffer
See Also: OemToUtf8Buffer, Free, String Functions
Purpose
Converts a UTF-8 string to OEM.
Return Type
Syntax
Use CharTranslate.pkg
(Utf8ToOemBuffer({pUtf8Buf}, {iLen}))
Where:
- {pUtf8Buf}: A pointer to the string buffer to be converted.
- {iLen}: The length, in bytes, of the string pointed to by {pUtf8Buf}.
What It Does
Returns a pointer to a newly allocated string buffer containing the converted text. Converts a string of UTF-8 characters to OEM.
Examples
// Translate data. pass: Data and translation mode.
// Returns pointer to new translated data or 0 if no translation needed.
// Passed data is not changed.
// eXlt can be: xtUtf8toOem, xtOemtoUtf8, and xtNoTranslate
Function TranslateData Integer eXlt Pointer aData Integer iDataLen Returns Pointer
Pointer aDataXlt
Case Begin
case (eXlt = xtUtf8toOem)
Move (Utf8toOemBuffer(aData, iDataLen)) to aDataXlt
case Break
case (eXlt = xtOemtoUtf8)
Move (OemToUtf8Buffer(aData, iDataLen)) to aDataXlt
case Break
case else
Move 0 to aDataXlt
Case End
Function_Return aDataXlt
End_Function
Notes
Utf8ToOemBuffer will allocate a new block of memory to store the converted string. A pointer to this memory is returned by the function. You must call Free to de-allocate this memory when it is no longer required. Failure to do this will cause a memory leak in your application.