convert


Description:

public string convert (string str, ssize_t len, string to_codeset, string from_codeset, out size_t bytes_read = null, out size_t bytes_written = null) throws ConvertError

Converts a string from one character set to another.

Note that you should use iconv for streaming conversions. Despite the fact that bytes_read can return information about partial characters, the g_convert_... functions are not generally suitable for streaming. If the underlying converter maintains internal state, then this won't be preserved across successive calls to convert, convert_with_iconv or convert_with_fallback. (An example of this is the GNU C converter for CP1255 which does not emit a base character until it knows that the next character is not a mark that could combine with the base character.)

Using extensions such as "//TRANSLIT" may not work (or may not work well) on many platforms. Consider using to_ascii instead.

Parameters:

str

the string to convert.

to_codeset

name of character set into which to convert str

from_codeset

character set of str.

bytes_read

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 str.length if there were partial characters at the end of the input. If the error g_convert_error_illegal_sequence occurs, the value stored will be the byte offset after the last valid input sequence.

bytes_written

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

len

the length of the string in bytes, 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 str.length parameter is unsafe)

Returns:

If the conversion was successful, a newly allocated buffer containing the converted string, which must be freed with g_free. Otherwise null and throws will be set.


Namespace: GLib
Package: glib-2.0



2022 vala-language.org