CharacterSet.localeToUtf8

Converts a string which is in the encoding used for strings by the C runtime (usually the same as that used by the operating system) in the [current locale]setlocale into a UTF-8 string.

struct CharacterSet
static
string
localeToUtf8
(,
ptrdiff_t len
,
size_t* bytesRead
,
size_t* bytesWritten
)

Parameters

opsysstring string

a string in the encoding of the current locale. On Windows this means the system codepage.

len ptrdiff_t

the length of the string, or -1 if the string is nul-terminated (Note that some encodings may allow nul bytes to occur inside strings. In that case, using -1 for the @len parameter is unsafe)

bytesRead size_t*

location to store the number of bytes in the input string that were successfully converted, or %NULL. Even if the conversion was successful, this may be less than @len if there were partial characters at the end of the input. If the error #G_CONVERT_ERROR_ILLEGAL_SEQUENCE occurs, the value stored will the byte offset after the last valid input sequence.

bytesWritten size_t*

the number of bytes stored in the output buffer (not including the terminating nul).

Return: A newly-allocated buffer containing the converted string, or %NULL on an error, and error will be set.

Throws

GException on failure.

Meta