Scroll to navigation

iconv_open(3) Library Functions Manual iconv_open(3)

ИМЯ

iconv_open - создаёт дескриптор преобразования кодировки набора символов

БИБЛИОТЕКА

Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС

#include <iconv.h>
iconv_t iconv_open(const char *tocode, const char *fromcode);

ОПИСАНИЕ

Функция iconv_open() создаёт дескриптор, предназначенный для преобразования последовательности байтов с кодировкой fromcode в кодировку tocode.

Значения, допустимые для кодировок fromcode и tocode, и поддерживаемые комбинации, зависят от операционной системы. Для библиотеки GNU C разрешённые значения выводятся по команде iconv --list, а также поддерживаются все комбинации перечисленных значений. Кроме этого, библиотеки GNU C и GNU libiconv поддерживают два следующих суффикса:

//TRANSLIT
Если к tocode добавлена строка «//TRANSLIT», то включается транслитерация. Это означает, что когда символ не может быть представлен в целевом наборе символов, то он аппроксимируется одним или несколькими похожими символами.
//IGNORE
Если к tocode добавлена строка «//IGNORE», то символы, которые не могут быть представлены в целевом наборе символов, будут просто отбрасываться.

Полученный дескриптор преобразования может использоваться функцией iconv(3) любое количество раз. Он остается неизменным до тех пор, пока не будет освобождён функцией iconv_close(3).

Дескриптор преобразования содержит состояние перекодировки После создания с помощью функции iconv_open(), состояние равно начальному значению. Использование iconv(3) меняет состояние преобразования. Чтобы вернуть состояние в начальное значение, необходимо использовать функцию iconv(3) с параметром inbuf, равным NULL.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

On success, iconv_open() returns a freshly allocated conversion descriptor. On failure, it returns (iconv_t) -1 and sets errno to indicate the error.

ОШИБКИ

Среди прочих, может возникнуть следующая ошибка:

Преобразование из кодировки fromcode в tocode не поддерживается в данной реализации.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
iconv_open() Безвредность в нитях MT-Safe locale

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

glibc 2.1. POSIX.1-2001, SUSv2.

СМОТРИТЕ ТАКЖЕ

iconv(1), iconv(3), iconv_close(3)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Справочные страницы Linux 6.8