Spec-Zone.ru › Nim 1

кодировки

Преобразует между различными кодировками символов. В UNIX это использует библиотеку iconv, в Windows — API Windows.

Импорты

os

Типы

EncodingConverter = ptr ConverterObj
может преобразовывать между двумя наборами символов Исходный кодРедактировать
EncodingError = object of ValueError
исключение, которое генерируется при ошибках кодирования Исходный кодРедактировать

Процедуры

proc getCurrentEncoding(uiApp = false): string {...}{.raises: [], tags: [].}
извлекает текущую кодировку. В Unix всегда возвращается "UTF-8". Параметр uiApp — специфичен для Windows. Если true, возвращается кодовая страница пользовательского интерфейса, если false — кодовая страница консоли. Исходный кодРедактировать
proc open(destEncoding = "UTF-8"; srcEncoding = "CP1252"): EncodingConverter {...}{.
    raises: [EncodingError], tags: [].}
открывает преобразователь, который может преобразовывать из srcEncoding в destEncoding. Генерирует IOError если запрос не может быть выполнен. Исходный кодРедактировать
proc close(c: EncodingConverter) {...}{.raises: [], tags: [].}
освобождает ресурсы, которые удерживает преобразователь c. Исходный кодРедактировать
proc convert(c: EncodingConverter; s: string): string {...}{.raises: [OSError],
    tags: [].}
Исходный кодРедактировать
proc convert(s: string; destEncoding = "UTF-8"; srcEncoding = "CP1252"): string {...}{.
    raises: [EncodingError, OSError], tags: [].}
преобразует s в destEncoding. Предполагается, что s находится в srcEncoding. Это открывает преобразователь, использует его и снова закрывает, что более удобно, но, вероятно, менее эффективно, чем повторное использование преобразователя. utf-16BE, utf-32 преобразования не поддерживаются в windows Исходный кодРедактировать

© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/encodings.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API