Какая кодировка: Обработка шестнадцатеричных данных (HEX) — Хитрые инструменты


Universal online Cyrillic decoder — recover your texts

Universal online Cyrillic decoder — recover your texts

Version: 20210806
By the same author: Virtour.fr — visites virtuelles


The resulting text will be displayed here…


Please link to this site!
<a href=»https://2cyr.com/decode/»>Universal Cyrillic decoder</a>

Custom Work
For a small fee I can help you quickly recode/recover large pieces of data — texts, databases, websites… or write custom functions you can use (invoice available).
FAQ and contact information.

About the program


You may find this site useful, if you have recieved some texts that you believe are written in the Cyrillic alphabet, but instead are displayed in some strange combination of bizarre characters. This program will try to guess the encoding, and if it does not, it will show samples, examples of all encoding-combinations, so as you will be able to select the good one.

How to

  • Paste the text to decode in the big text area. The first few words will be analyzed so they should be (scrambled) in supposed Cyrillic.
  • The program will try to decode the text and will print the result below.
  • If the translation is successful, you will see the text in Cyrillic characters and will be able to copy it and save it if it’s important.
  • If the translation isn’t successful (still the text is not in Cyrillic but in the same or other unintelligible characters), you can choose from the newly created select-listbox the variant that is in Cyrillic (if there are more than one, select the longest). By pressing the button OK you will have the correct text converted.
  • If the text is not totally converted, try all other variants in Cyrillic from the select-listbox.


  • If your text contains question marks «???? ?? ??????», the problem is with the sender and no recovery will be possible. Ask them to resend the text, eventually as an ordinary text file or in LibreOffice/OpenOffice/MSOffice format.
  • There is no claim that every text is recoverable, even if you are certain that the text is in Cyrillic.
  • The analyzed and converted text is limited to 100 KiB.
  • A 100% precision is not always achieved — in a conversion from a codepage to another code page, some characters may be lost, like the Bulgarian quotes or rarely some single letters. Some of this depends on your Windows Clipboard character handling.
  • The program will try a maximum of 7245 variants in two or three levels: if there had been a multiple encoding like koi8(utf(cp1251(utf))), it will not be detected or tested. Usually the possible and displayed correct variants are between 32 and 255.
  • If a part of the text is encoded with one code page, and another part — with another code page, the program could recognize only one of the parts at a time.

Terms of use

Please notice that this freeware program is created with the hope that it would be useful, but has no warranty, not even an implied warranty for fitness for any particular use. Please use it at your own risk.

If you have very long texts to translate, please make sure you have a backup copy.

What’s new

  • March 2021 : After a server upgrade, the program stopped working and some parts of it had to be rewritten.
  • May 2020 : Added Тоҷикӣ/Tajik translation, thanks to Анвар/Anvar.
  • October 2017 : Added «Select all / Copy» button.
  • July 2016 : SSL Certificate installed, you can now access the Decoder on a secure connection.
  • October 2013 : I am trying different optimizations for the system which should make the decoder run faster and handle more text. If you notice any problem, please notify me ASAP.
  • March 2013 : My hosting provider sent me a warning that the Decoder is using too much server CPU power and its processes were killed more than 100 times. I am making some changes so that the program will use less CPU, especially when reposting a previously sampled text, however, the decoded form may load somewhat slower. Please contact me if you have some difficulties using the program.
  • 2012-08-09 : Added French translation, thanks to Arnaud D.
  • 2011-03-06 : Added Belorussian translation, thanks to Зыль and Aliaksandr Hliakau.
  • 31.07.10 : Added Serbian translation, thanks to Miodrag Danilovic (Boston — Beograd).
  • 07.05.09 : Raised limit of MAX text size to 50 kiB.
  • may 2009 : Added Ukrainian interface thanks to Barmalini.
  • 2008-2009 : A number of small fixes and tweaks of the detection algorithm. Changed interface to default to automatic decoding.
  • 12.08.07 : Fixed Russian language translation, thanks to Petr Vasilyev. This page will be significantly restructured in the near future.
  • 10.11.06 : Three new postfilters added: «base64», «unix-to-unix» и «bin-to-hex», theoretically the tested combinations are 4725. Changes to the frequency analysis function (testing).
  • 11.10.06 : The main site is on a new hardware server, should run faster.
  • 11.09.06 : The program now uses PHP5 and should run times faster.
  • 19.08.06 : Because of a broken DNS entry, this site was inaccessible from 06:00 on 15 august up to 15:00 on 18 august. That was the reason for me to set two «mirror» sites (5ko.free.fr/decode and www.accent.bg/decode) with the same program. If the original has a problem, you can find the copies in Google and recover your texts.
  • 17.06.06 : Added two more antique Cyrillic encodings, MIK и KOI-7, but you better not need them.
  • 03.03.06 : Added Slovak translation, thanks to Martin from KPR Slovakia.
  • 15.02.06 : More encodings added and tested.
  • 20.10.05 : Small improvement to the frequency-analysis function: for texts, written in all-capital letters.
  • 14.10.05 : Two more gmail-Cyrillic encodings were added. Theoretically the tested combinations are 2112.
  • 15.06.05 : Russian language interface was added. Big thanks to chAlx!
  • 16.02.05 : One more postfilter decoding is added, for strings like this: «%u043A%u0438%u0440%u0438%u043B%u0438%u0446%u0430».
  • 05.02.05 : More encodings tests added, the number of tested encodings is doubled, but thus the program may work slightly slower.
  • 03.02.05 : The frequency analysis function that detects the original encoding works much better now. Currently the program recognises most of the encodings if the first few words are not too weird. It although still needs some improvement.
  • 15.01.05 : The input text limit is raised from 10 to 20 kB.
  • 01.12.04 : First public release.

Back to the Latin to Cyrillic convertor.

Как проверить кодировку в текстовом файле? / Общая / SocialKit

Программный комплекс SocialKit корректно работает с кириллицей в текстовых файлах, кодировка которых соответствует стандарту Windows-1251 (кратко может быть записано как CP1251 или ANSI). В этой связи в задачах, поддерживающих указание внешнего файла с перечнем комментариев, сообщений, описаний и прочей информации, которая может содержать кириллицу, нужно указывать текстовые файлы, где русский текст задан в кодировке по стандарту Windows-1251 или же просто ANSI, или CP1251 — всё это, по сути, одно и то же.

Учитывая, что многие инструменты по работе с текстом не отображают, в какой именно кодировке задан текст в текстовом файле и/или не поддерживают преобразование кодировок, то у новичков часто возникает вопрос о том, как именно привести кодировку текстового файла с русским текстом к понятному для SocialKit формату CP1251.

Следует сразу отметить, что большинство текстовых редакторов для ОС Windows (например, встроенный Блокнот и Wordpad) по умолчанию создают текстовые файлы именно с кодировкой по стандарту Windows-1251. Однако, эта кодировка по умолчанию может быть изменена в следствие тех или иных действий.

Если вы не уверены в том, в какой именно кодировке задан текст, то проще всего этот текст пересохранить через стандартный Блокнот Windows. При пересохранении Блокнот также покажет, в каком формате текст сейчас.

Опишем эту простую процедуру по шагам.

1. Открыть искомый текстовый файл в Блокноте Windows и выбрать пункт меню «Файл» -> «Сохранить как…».

Пример текстового файла, в котором русский текст задан в формате UTF, но это не очевидно при открытии.

2. В открывшемся диалоговом окне вы сразу видите, в какой кодировке был сохранён текст в текстовом файле.

Диалоговое окно пересохранения текстового файла, в котором можно сразу изменить кодировку.

Как видно, в примере текст в текстовом файле был ранее сохранён в кодировке UTF-8. Для изменения кодировке достаточно выбрать в выпадающем списке кодировку ANSI и нажать кнопку «Сохранить«.

При этом зрительно для вас ничего не изменится, но многое изменится для программы и алгоритмов, занимающихся обработкой текста в процессе отправки. Корректно Instagram’у будет отправлен только ANSI-текст.

Какая кодировка используется в SMS из iPhone?

Какая кодировка используется в SMS из iPhone?






06 января 2011 в 11:33

2 ответа

  • Какая кодировка кодировки используется для HTTP GET запросов URL?

    Возможный Дубликат : What’s правильная кодировка строк запроса HTTP get? Один из моих клиентов прислал мне, что они требуют, чтобы HTTP запрос был закодирован в ISO-8859-2, поэтому мне интересно, какая кодировка используется для связи HTTP, и если этот запрос каким-то образом технически верен.

  • Какой шрифт и размер шрифта используется в приложении iPhone SMS?

    Кто-нибудь знает, какой тип шрифта (например, Arial, Courier new и т. д.) и размер шрифта (например, 9 pt и т. д.) используется в SMS приложении iPhone. Мне нужна эта информация, чтобы создать приложение iPhone, которое использует SMS API.


7-бит, если вы используете только символы из набора символов “plain” GSM во всем сообщении, 16-бит UTF-16, если вы используете какие-либо символы за пределами этого набора.



06 января 2011 в 12:12


К вашему сведению — смешанный успех при использовании расширенного набора символов GSM (GSM 03.38), где подмножество специальных символов использует 2 x 7 битных символа, но базовые символы составляют 1 x 7 бит на символ (см. long-sms-text-messages-and-the-160-character-limit для хорошего объяснения).

Сообщения с квадратными скобками [ ] (GSM 03.38), маршрутизируемые через одну несущую, правильно декодируются на iPhone, но квадратная скобка + следующая буква скремблируются при получении через другую несущую (на ту же iPhone). По-видимому, он зависит от носителя и не связан конкретно с iPhone, потому что проблема также наблюдается на Android.

Поэтому будьте осторожны, используя расширенный набор символов.



02 января 2017 в 03:59

Похожие вопросы:

Какая кодировка используется при вводе символа?

Когда я набираю, например, испанский символ (с клавиатуры), какая кодировка используется для отправки этого символа в приложение (например, блокнот или Word)? E.g. отправляет ли клавиатура его в…

Какая кодировка используется протоколом HTTP?

Когда браузер отправляет запрос HTTP на веб-сервер, какая кодировка используется для кодирования протокола HTTP на проводе? Это ASCII? Кодировке utf8? или UTF16? Или он указывает, какую кодировку он…

Какая кодировка используется при вызове fopen или open?

Когда мы вызываем системный вызов в linux как open или функции из stdio, как ‘ fopen ‘мы должны обеспечить’ const char * filename ‘. Мой вопрос заключается в том, какая кодировка используется здесь?…

Какая кодировка кодировки используется для HTTP GET запросов URL?

Возможный Дубликат : What’s правильная кодировка строк запроса HTTP get? Один из моих клиентов прислал мне, что они требуют, чтобы HTTP запрос был закодирован в ISO-8859-2, поэтому мне…

Какой шрифт и размер шрифта используется в приложении iPhone SMS?

Кто-нибудь знает, какой тип шрифта (например, Arial, Courier new и т. д.) и размер шрифта (например, 9 pt и т. д.) используется в SMS приложении iPhone. Мне нужна эта информация, чтобы создать…

Какая кодировка символов используется StreamReader.ReadToEnd()?

Какая кодировка символов используется StreamReader.ReadToEnd() ? Какова была бы причина использовать (b) вместо (a) ниже? Существует ли риск того, что они будут проблемой кодировки символов, если…

iPhone / отправить vCard через simple SMS

Я хочу отправить vCard через простой SMS. Я не собираюсь посылать vCard с iMessage из Email. Я создал vCard в формате ниже. BEGIN:VCARD VERSION:3.0 N:;Sahil;;; FN:Sahil…

Какая кодировка используется для кхмерского языка

Я хочу знать, какая кодировка используется для кхмерского языка (официального языка Камбоджи). Это UTF-8 или UTF-16 .

Какая кодировка используется для строк в Python 2.x?

Какая кодировка по умолчанию используется для кодирования строк в python 2.x? Я читал, что есть два возможных способа объявить строку. string = ‘this is a string’ unicode_string = u’this is a…

Вывод плана терраформирования: какая кодировка используется

Я сохранил terraform plan -out=my-plan и намерен сохранить его в системе управления версиями, а затем ввести в пользовательский инструмент для приема внутрь и выполнения тестирования и т. д. Однако…

HTML Кодировки

Чтобы правильно отобразить html-документ, браузер должен знать какая кодировка символов использовалась при создании документа.
ASCII — одна из самых старых компьютерных кодировок, в которой каждому символу соответствует строго определенное число. Например, символу «a» соответствует число 97, а символу «A» — число 65.
Эта аббревиатура расшифровывается как American Standard Code for Information Interchange (американская стандартная кодировочная таблица для печатных символов и некоторых специальных кодов).
ASCII — это однобайтовая кодировка, в которую изначально заложено всего 128 символов: буквы латинского алфавита, арабские цифры и т.д.
Вы можете посмотреть на полный комплект Печатаемых символов ASCII.

Позже ASCII была расширена (изначально она не использовала все 8 бит), поэтому появилась возможность использовать уже не 128, а 256 (2 в 8 степени) различных символов, которые можно закодировать в одном байте информации.
Такое усовершенствование позволило добавлять в кодировку ASCII символы национальных языков разных стран, помимо уже существующей латиницы.
Вариантов расширенной кодировки ASCII существует очень много по причине того, что языков в мире тоже немало. Думаю, что многие из вас слышали о такой кодировке, как KOI8 (Код Обмена Информацией, 8 бит) — это тоже расширенная кодировка ASCII. KOI8 включала в себя цифры, буквы латинского и русского алфавита, а также знаки пунктуации, спецсимволы и псевдографику.

Кодировка ISO

Организация Международных стандартов (International Standards Organization) создала диапазон кодировок для различных алфавитов/языков.

Кодировки серии ISO 8859

ISO 8859-1 (Latin-1)Расширенная латиница, включающая символы большинства западноевропейских языков (английский, датский, ирландский, исландский, испанский, итальянский, немецкий, норвежский, португальский, ретороманский, фарерский, шведский, шотландский (гэльский) и частично голландский, финский, французский), а также некоторых восточноевропейских (албанский) и африканских языков (африкаанс, суахили). В Latin-1 отсутствуют знак евро и заглавная буква Ÿ. Эта кодовая страница считается кодировкой по умолчанию для HTML-документов и сообщений электронной почты. Также этой кодовой странице соответствуют первые 256 символов Юникода.
ISO 8859-2 (Latin-2)Расширенная латиница, включающая символы центральноевропейских и восточноевропейских языков (боснийский, венгерский, польский, словацкий, словенский, хорватский, чешский). В Latin-2, как и в Latin-1, отсутствуют знак евро.
ISO 8859-3 (Latin-3)Расширенная латиница, включающая символы южноевропейских языков (мальтийский, турецкий и эсперанто).
ISO 8859-4 (Latin-4)Расширенная латиница, включающая символы североевропейских языков (гренландский, эстонский, латышский, литовский и саамские языки).
ISO 8859-5 (Latin/Cyrillic)Кириллица, включающая символы славянских языков (белорусский, болгарский, македонский, русский, сербский и частично украинский).
ISO 8859-6 (Latin/Arabic)Символы, используемые в арабском языке. Символы других языков с письмом на основе арабского не поддерживаются. Для корректного отображения текста в кодировке ISO 8859-6 требуется поддержка двунаправленного письма и контекстно-зависимых форм символов.
ISO 8859-7 (Latin/Greek)Символы современного греческого языка. Может использоваться также для записи древнегреческих текстов в монотонической орфографии.
ISO 8859-8 (Latin/Hebrew)Символы современного иврита. Используется в двух вариантах: с логическим порядком следования символов (требует поддержки двунаправленного письма) и с визуальным порядком следования символов.
ISO 8859-9 (Latin-5)Вариант Latin-1, в котором редко используемые символы исландского языка заменены на турецкие. Используется для турецкого и курдского языков.
ISO 8859-10 (Latin-6)Вариант Latin-4, более удобный для скандинавских языков.
ISO 8859-11 (Latin/Thai)Символы тайского языка.
ISO 8859-13 (Latin-7)Вариант Latin-4, более удобный для балтийских языков.
ISO 8859-14 (Latin-8)Расширенная латиница, включающая символы кельтских языков, таких как шотландский (гэльский) и бретонский.
ISO 8859-15 (Latin-9)Вариант Latin-1, в котором редко используемые символы заменены на необходимые для полной поддержки финского, французского и эстонского языков. Кроме того, в Latin-9 был добавлен знак евро.
ISO 8859-16 (Latin-10)Расширенная латиница, включающая символы южноевропейских и восточноевропейских (албанский, венгерский, итальянский, польский, румынский, словенский, хорватский), а также некоторых западноевропейских языков (ирландский в новой орфографии, немецкий, финский, французский). Как и в Latin-9, в Latin-10 был добавлен знак евро.

Для документов на английском и большинстве других западноевропейских языков, широко поддерживается кодирование ISO-8859-1.

Таблица кодов символов ISO-8859-1

В HTML ISO-8859-1 является кодировкой по умолчанию (в XHTML и в HTML5 кодировкой по умолчанию является UTF-8).
При использовании кодировки страницы, отличной от ISO-8859-1, вам необходимо указать это в теге <meta>.

Для HTML4:

<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">

Для HTML5:

<meta charset="UTF-8">

Примером ANSI-кодировки является всем известная Windows-1251.

Windows-1251 выгодно отличается от других 8 битных кириллических кодировок (таких как CP866 и ISO 8859-5) наличием практически всех символов, использующихся в русской типографике для обычного текста (отсутствует только знак ударения). Она также содержит все символы для других славянских языков: украинского, белорусского, сербского, македонского и болгарского.
Ниже приведены десятичные значения символов кодировки Windows-1251.

Для отображения символов таблицы в HTML-документе воспользуйтесь следующим синтаксисом:

&&num; + код + ;

Кодировка Windows-1251 (CP1251)





















Таблица кодов символов Windows-1251

Кодировки стандарта UNICODE

Юникод (англ. Unicode) — стандарт кодирования символов, позволяющий представить знаки почти всех письменностей мира, и специальных символов. Представляемые в юникоде символы кодируются целыми числами без знака. Юникод имеет несколько форм представления символов в компьютере: UTF-8, UTF-16 (UTF-16BE, UTF-16LE) и UTF-32 (UTF-32BE, UTF-32LE). (Англ. Unicode transformation format — UTF).
UTF-8 — это в настоящее время распространённая кодировка, которая нашла широкое применение в операционных системах и веб-пространстве. Текст, состоящий из символов Unicode с номерами меньше 128 (область с кодами от U+0000 до U+007F), содержит символы набора ASCII с соответствующими кодами. Далее расположены области знаков различных письменностей, знаки пунктуации и технические символы. Под символы кириллицы выделены области знаков с кодами от U+0400 до U+052F, от U+2DE0 до U+2DFF, от U+A640 до U+A69F.

Кодировка UTF-8 является универсальной и имеет внушительный резерв на будущее. Это делает ее наиболее удобной кодировкой для использования в интернете.

Таблица кодов символов UTF-8 кирилица

Как я могу увидеть, какая кодировка используется в файле

Вы не можете автоматически определить, был ли файл изначально написан с кодировкой X.

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

Проблема в том, что многие кодеки похожи и имеют одинаковые «допустимые шаблоны байтов», просто интерпретируя их как разные символы. Например, äкодирование в одном может соответствовать éдругому или øв третьем. Компьютер не может действительно определить, какой способ интерпретации байта приводит к правильно читаемому человеку тексту (если, возможно, если вы добавите словарь для всех видов языков и позволите ему выполнять проверку орфографии …). Вы также должны знать, что некоторые наборы символов фактически являются подмножествами других, например, кодировка ASCII является частью наиболее часто используемых кодеков, таких как некоторые из семейства ANSI или UTF-8. Это означает, например, текст, сохраненный как UTF-8, который содержит только простые латинские символы, он будет идентичен тому же файлу, сохраненному как ASCII.

Однако давайте вернемся к объяснению того, что вы не можете сделать, к тому, что вы действительно можете сделать:

Для базовой проверки текстовых файлов ASCII / non-ASCII (обычно UTF-8) вы можете использовать fileкоманду. Однако он не знает многих кодеков и проверяет только первые несколько килобайт файла, предполагая, что остальные не будут содержать никаких новых символов. С другой стороны, он также распознает другие распространенные типы файлов, такие как различные сценарии, документы HTML / XML и многие форматы двоичных данных (хотя все это неинтересно для сравнения текстовых файлов), и может выводить дополнительную информацию, если есть чрезвычайно длинные строки или что тип последовательности новой строки (например, UNIX: LF, Windows: CR + LF).

$ cat ascii.txt 
I am an ASCII file.
Just text and numb3rs and simple punctuation...

$ cat utf8.txt 
I am a Unicode file.
Special characters like Ω€®Ŧ¥↑ıØÞöäüß¡!

$ file ascii.txt utf8.txt 
ascii.txt: ASCII text
utf8.txt:  UTF-8 Unicode text

Если этого недостаточно, я могу предложить вам скрипт Python, который я написал для этого ответа , который сканирует полные файлы и пытается декодировать их, используя указанный набор символов. Если это удастся, это кодирование является потенциальным кандидатом. В противном случае, если есть какие-либо байты, которые не могут быть декодированы вместе с ним, вы можете удалить этот набор символов из своего списка.

Postgres Pro Standard : Документация: 9.5: 22.3. Поддержка кодировок : Компания Postgres Professional

22.3. Поддержка кодировок

Поддержка кодировок в Postgres Pro позволяет хранить текст в различных кодировках, включая однобайтовые кодировки, такие как входящие в семейство ISO 8859 и многобайтовые кодировки, такие как EUC (Extended Unix Code), UTF-8 и внутренний код Mule. Все поддерживаемые кодировки могут прозрачно использоваться клиентами, но некоторые не поддерживаются сервером (в качестве серверной кодировки). Кодировка по умолчанию выбирается при инициализации кластера базы данных Postgres Pro при помощи initdb. Она может быть переопределена при создании базы данных, что позволяет иметь несколько баз данных с разными кодировками.

Важным ограничением, однако, является то, что кодировка каждой базы данных должна быть совместима с параметрами локали базы данных LC_CTYPE (классификация символов) и LC_COLLATE (порядок сортировки строк). Для локали C или POSIX подойдёт любой набор символов, но для других локалей есть только одна кодировка, которая будет работать правильно. (Однако, в среде Windows кодировка UTF-8 может использоваться с любой локалью.)

22.3.1. Поддерживаемые кодировки

Таблица 22.1 показывает кодировки, доступные для использования в Postgres Pro.

Таблица 22.1. Кодировки Postgres Pro

ИмяОписаниеЯзыкПоддержка на сервереБайтов на символПсевдонимы
BIG5Big FiveТрадиционные китайские иероглифыНет1-2WIN950, Windows950
EUC_CNExtended UNIX Code-CNУпрощённые китайские иероглифыДа1-3 
EUC_JPExtended UNIX Code-JPЯпонскийДа1-3 
EUC_JIS_2004Extended UNIX Code-JP, JIS X 0213ЯпонскийДа1-3 
EUC_KRExtended UNIX Code-KRКорейскийДа1-3 
EUC_TWExtended UNIX Code-TWТрадиционные китайские иероглифы, тайваньскийДа1-3 
GB18030Национальный стандартКитайскийНет1-4 
GBKРасширенный национальный стандартУпрощённые китайские иероглифыНет1-2WIN936, Windows936
ISO_8859_5ISO 8859-5, ECMA 113Латинский/КириллицаДа1 
ISO_8859_6ISO 8859-6, ECMA 114Латинский/АрабскийДа1 
ISO_8859_7ISO 8859-7, ECMA 118Латинский/ГреческийДа1 
ISO_8859_8ISO 8859-8, ECMA 121Латинский/ИвритДа1 
JOHABJOHABКорейский (Хангыль)Нет1-3 
KOI8RKOI8-RКириллица (Русский)Да1KOI8
KOI8UKOI8-UКириллица (Украинский)Да1 
LATIN1ISO 8859-1, ECMA 94ЗападноевропейскиеДа1ISO88591
LATIN2ISO 8859-2, ECMA 94ЦентральноевропейскиеДа1ISO88592
LATIN3ISO 8859-3, ECMA 94ЮжноевропейскиеДа1ISO88593
LATIN4ISO 8859-4, ECMA 94СевероевропейскиеДа1ISO88594
LATIN5ISO 8859-9, ECMA 128ТурецкийДа1ISO88599
LATIN6ISO 8859-10, ECMA 144СкандинавскиеДа1ISO885910
LATIN7ISO 8859-13БалтийскиеДа1ISO885913
LATIN8ISO 8859-14КельтскиеДа1ISO885914
LATIN9ISO 8859-15LATIN1 c европейскими языками и диалектамиДа1ISO885915
LATIN10ISO 8859-16, ASRO SR 14111РумынскийДа1ISO885916
MULE_INTERNALВнутренний код MuleМультиязычный редактор EmacsДа1-4 
SJISShift JISЯпонскийНет1-2Mskanji, ShiftJIS, WIN932, Windows932
SHIFT_JIS_2004Shift JIS, JIS X 0213ЯпонскийНет1-2 
SQL_ASCIIне указан (см. текст)anyДа1 
UHCУнифицированный код ХангыльКорейскийНет1-2WIN949, Windows949
UTF8Unicode, 8-bitвсеДа1-4Unicode
WIN866Windows CP866КириллицаДа1ALT
WIN874Windows CP874ТайскийДа1 
WIN1250Windows CP1250ЦентральноевропейскиеДа1 
WIN1251Windows CP1251КириллицаДа1WIN
WIN1252Windows CP1252ЗападноевропейскиеДа1 
WIN1253Windows CP1253ГреческийДа1 
WIN1254Windows CP1254ТурецкийДа1 
WIN1255Windows CP1255ИвритДа1 
WIN1256Windows CP1256АрабскийДа1 
WIN1257Windows CP1257БалтийскиеДа1 
WIN1258Windows CP1258ВьетнамскийДа1ABC, TCVN, TCVN5712, VSCII

Не все клиентские API поддерживают все перечисленные кодировки. Например, драйвер интерфейса JDBC Postgres Pro не поддерживает MULE_INTERNAL, LATIN6, LATIN8 и LATIN10.

Поведение кодировки SQL_ASCII существенно отличается от других. Когда набором символов сервера является SQL_ASCII, сервер интерпретирует значения от 0 до 127 байт согласно кодировке ASCII, тогда как значения от 128 до 255 воспринимаются как незначимые. Перекодировка не будет выполнена при выборе SQL_ASCII. Таким образом, этот вариант является не столько объявлением того, что используется определённая кодировка, сколько объявлением того, что кодировка игнорируется. В большинстве случаев, если вы работаете с любыми данными, отличными от ASCII, не стоит использовать SQL_ASCII, так как Postgres Pro не сможет преобразовать или проверить символы, отличные от ASCII.

22.3.2. Настройка кодировки

initdb определяет кодировку по умолчанию для кластера Postgres Pro. Например,

initdb -E EUC_JP

настраивает кодировку по умолчанию на EUC_JP (Расширенная система кодирования для японского языка). Можно использовать --encoding вместо -E в случае предпочтения более длинных имён параметров. Если параметр -E или --encoding не задан, initdb пытается определить подходящую кодировку в зависимости от указанной или заданной по умолчанию локали.

При создании базы данных можно указать кодировку, отличную от заданной по умолчанию, если эта кодировка совместима с выбранной локалью:

createdb -E EUC_KR -T template0 --lc-collate=ko_KR.euckr --lc-ctype=ko_KR.euckr korean

Это создаст базу данных с именем korean, которая использует кодировку EUC_KR и локаль ko_KR. Также, получить желаемый результат можно с помощью данной SQL-команды:


Заметьте, что приведённые выше команды задают копирование базы данных template0. При копировании любой другой базы данных, параметры локали и кодировку исходной базы изменить нельзя, так как это может привести к искажению данных. Более подробное описание приведено в Разделе 21.3.

Кодировка базы данных хранится в системном каталоге pg_database. Её можно увидеть при помощи параметра psql -l или команды \l.

$ psql -l
                                         List of databases
   Name    |  Owner   | Encoding  |  Collation  |    Ctype    |          Access Privileges          
 clocaledb | hlinnaka | SQL_ASCII | C           | C           | 
 englishdb | hlinnaka | UTF8      | en_GB.UTF8  | en_GB.UTF8  | 
 japanese  | hlinnaka | UTF8      | ja_JP.UTF8  | ja_JP.UTF8  | 
 korean    | hlinnaka | EUC_KR    | ko_KR.euckr | ko_KR.euckr | 
 postgres  | hlinnaka | UTF8      | fi_FI.UTF8  | fi_FI.UTF8  | 
 template0 | hlinnaka | UTF8      | fi_FI.UTF8  | fi_FI.UTF8  | {=c/hlinnaka,hlinnaka=CTc/hlinnaka}
 template1 | hlinnaka | UTF8      | fi_FI.UTF8  | fi_FI.UTF8  | {=c/hlinnaka,hlinnaka=CTc/hlinnaka}
(7 rows)


На большинстве современных операционных систем Postgres Pro может определить, какая кодировка подразумевается параметром LC_CTYPE, что обеспечит использование только соответствующей кодировки базы данных. На более старых системах необходимо самостоятельно следить за тем, чтобы использовалась кодировка, соответствующая выбранной языковой среде. Ошибка в этой области, скорее всего, приведёт к странному поведению зависимых от локали операций, таких как сортировка.

Postgres Pro позволит суперпользователям создавать базы данных с кодировкой SQL_ASCII, даже когда значение LC_CTYPE не установлено в C или POSIX. Как было сказано выше, SQL_ASCII не гарантирует, что данные, хранящиеся в базе, имеют определённую кодировку, и таким образом, этот выбор чреват сбоями, связанными с локалью. Использование данной комбинации устарело и, возможно, будет полностью запрещено.

22.3.3. Автоматическая перекодировка между сервером и клиентом

Postgres Pro поддерживает автоматическую перекодировку между сервером и клиентом для определённых комбинаций кодировок. Информация, касающаяся перекодировки, хранится в системном каталоге pg_conversion. Postgres Pro включает в себя некоторые предопределённые кодировки, как показано в Таблице 22.2. Есть возможность создать новую перекодировку при помощи SQL-команды CREATE CONVERSION.

Таблица 22.2. Клиент-серверные перекодировки наборов символов

Серверная кодировкаДоступные клиентские кодировки
BIG5не поддерживается как серверная кодировка
EUC_JIS_2004EUC_JIS_2004, SHIFT_JIS_2004, UTF8
GB18030не поддерживается как серверная кодировка
GBKне поддерживается как серверная кодировка
ISO_8859_5ISO_8859_5, KOI8R, MULE_INTERNAL, UTF8, WIN866, WIN1251
ISO_8859_6ISO_8859_6, UTF8
ISO_8859_7ISO_8859_7, UTF8
ISO_8859_8ISO_8859_8, UTF8
JOHABне поддерживается как серверная кодировка
SJISне поддерживается как серверная кодировка
SHIFT_JIS_2004не поддерживается как серверная кодировка
SQL_ASCIIлюбая (перекодировка не будет выполнена)
UHCне поддерживается как серверная кодировка
UTF8все поддерживаемые кодировки
WIN874WIN874, UTF8
WIN1251WIN1251, ISO_8859_5, KOI8R, MULE_INTERNAL, UTF8, WIN866
WIN1252WIN1252, UTF8
WIN1253WIN1253, UTF8
WIN1254WIN1254, UTF8
WIN1255WIN1255, UTF8
WIN1256WIN1256, UTF8
WIN1257WIN1257, UTF8
WIN1258WIN1258, UTF8

Чтобы включить автоматическую перекодировку символов, необходимо сообщить Postgres Pro кодировку, которую вы хотели бы использовать на стороне клиента. Это можно выполнить несколькими способами:

  • Использование команды \encoding в psql. \encoding позволяет оперативно изменять клиентскую кодировку. Например, чтобы изменить кодировку на SJIS, введите:

    \encoding SJIS
  • libpq (Раздел 31.10) имеет функции, для управления клиентской кодировкой.

  • Использование SET client_encoding TO. Клиентская кодировка устанавливается следующей SQL-командой:


    Также, для этой цели можно использовать стандартный синтаксис SQL SET NAMES:

    SET NAMES 'value';

    Получить текущую клиентскую кодировку:

    SHOW client_encoding;

    Вернуть кодировку по умолчанию:

    RESET client_encoding;
  • Использование PGCLIENTENCODING. Если установлена переменная окружения PGCLIENTENCODING, то эта клиентская кодировка выбирается автоматически при подключении к серверу. (В дальнейшем это может быть переопределено при помощи любого из методов, указанных выше.)

  • Использование переменной конфигурации client_encoding. Если задана переменная client_encoding, указанная клиентская кодировка выбирается автоматически при подключении к серверу. (В дальнейшем это может быть переопределено при помощи любого из методов, указанных выше.)

Если перекодировка определённого символа невозможна (предположим, выбраны EUC_JP для сервера и LATIN1 для клиента, и передаются некоторые японские иероглифы, не представленные в LATIN1), возникает ошибка.

Если клиентская кодировка определена как SQL_ASCII, перекодировка отключается вне зависимости от кодировки сервера. Что же касается сервера, не стоит использовать SQL_ASCII, если только вы не работаете с данными, которые полностью соответствуют ASCII.

22.3.4. Дополнительные источники информации

Рекомендуемые источники для начала изучения различных видов систем кодирования.

Обработка информации на китайском, японском, корейском & вьетнамском языках.

Содержит подробные объяснения по EUC_JP, EUC_CN, EUC_KR, EUC_TW.


Сайт Unicode Consortium.

RFC 3629

UTF-8 (формат преобразования 8-битного UCS/Unicode) определён здесь.

Кодирование от алкоголя: какие виды бывают?

Алкоголизм – болезнь, из-за которой страдает вся семья выпивающего. Вылечить ее сложно, сам алкоголик избавиться от болезни может в редких случаях. Ему потребуется помощь нарколога, который определит причину запоев, избавит от внутренних противоречий, закодирует на физическом и психологическом уровне.

Методы кодирования от алкоголя

Кодировка – это создание персонального кода для блокировки тяги к спиртному. Выделяют медикаментозное и психологическое программирование. Для своего пациента врач подбирает отдельный самый эффективный метод кодирования от алкоголизма.

Эффективная кодировка от алкоголизма – медикаментозная. Лекарства блокируют выработку в организме веществ, которые отвечают за расщепление этанола. Алкогольные токсины скапливаются в организме, и у выпивающего появляется стойкое неприятие спиртного. Врач вводит препараты в вену или мышцу. Медикаменты могут вшиваться под кожу, постепенно компоненты растворяются и вызывают отвращение к спиртному.

Виды кодировки от алкогольной зависимости

Виды кодированийПревосходстваНедостатки
Медикаментозное Легко объяснить пациенту воздействие препарата и последствия. Подходит тем кто давно употребляет алкоголь.Большое количество побочных эффектов. Риск развития неотложных состояний. Необходимо время для начала фармакологического действия препарата.
ПсихотерапевтическоеНет побочных эффектов от лекарств. Возможно применять тем кто только в начальной стадииПосле окончания срока повторные процедуры малоэффективны.
КомбинированноеНаиболее популярный способ и у врачей и у пациентов. Длительные сроки стойкой ремиссии.Возможно обесценивание метода со стороны пациентов после срыва. На повторную процедуру уговорить сложно.
ИглорефлексотерапияНаиболее древний метод лечения зависимостей. Без лекарств и слов, но воздействует непосредственно на проблему тяги к алкоголю. Признан современными мировыми специалистами как наиболее верный.Мало информации у населения об этом методе. Отсюда недоверие к эффектности. Мало специалистов.

Согласно отзывам, самая лучшая кодировка от алкоголя – иглоукалывание. Врач точечно вводит иглы под кожу в определенных участках. Серебряные и золотые иголки вводятся последовательно в активные точки. После курса пациенту сложно  выпить даже небольшую дозу. У него появляются неприятные  симптомы интоксикации. Повторно пройти через такие ощущения алкоголику уже не захочется. Проходить процедуру иглоукалывания нужно в проверенных сертифицированных центрах.

В поисках какое кодирование лучше от алкоголизма, многие респонденты отдают предпочтение психологическим способам кодирования от алкогольной зависимости. Это воздействие на подсознание алкоголика. Немедикаментозные способы закодироваться от алкоголя вызывают все больше доверия.  Гипноз — самое эффективное кодирование от алкоголизма — Так считают больше 60% опрошенных.

Дополнительно к лучшим кодировкам от алкоголя можно отнести метод кодировки от алкоголизма Довженко.

Найти лучшую кодировку от алкоголизма, подобрать клинику, провести консультацию, первичное обследование зависимого могут специалисты центра экспертной аддиктологии «Независимый Взгляд».

Если у Вас остались вопросы, напишите нам!

И мы в ближайшее время свяжемся с Вами и ответим на них. Также дадим необходимую консультацию и подберем наилучшую стратегию для решения Вашей проблемы!

Кодировок символов для начинающих

Во-первых, какое мне дело?

Если вы используете что-либо, кроме самого основного текста на английском языке, люди не смогут прочитать созданный вами контент.
если вы не укажете, какую кодировку символов вы использовали.

Например, вы можете сделать так, чтобы текст выглядел так:

, но на самом деле он может отображаться так:

Отсутствие информации о кодировке символов не только ухудшает удобочитаемость отображаемого текста, но также может означать, что ваши данные не могут быть найдены
поисковой системой или надежно обрабатывается машинами другими способами.

Так что за кодировка символов?

Слова и предложения в тексте состоят из знаков . Примеры символов включают латинскую букву á, китайскую идеограмму 請 или символ деванагари ह.

Возможно, вы не сможете увидеть некоторые символы на этой странице, потому что у вас нет необходимых шрифтов. Если вы нажмете на то место, где вы ожидали увидеть персонажа, вы перейдете к графической версии. Эта страница закодирована в UTF-8.

Персонажи, необходимые для определенной цели, сгруппированы в набор символов (также называемый репертуаром ). (Чтобы однозначно обозначать символы, каждый символ связан с числом, называемым кодовой точкой .)

Символы хранятся в компьютере как один или несколько байтов .

В принципе, вы можете визуализировать это, предположив, что все символы хранятся в компьютерах с использованием специального кода, такого как шифры, используемые в шпионаже.Кодировка символов предоставляет ключ для разблокировки (т. Е. Взлома) кода. Это набор соответствий между байтами в компьютере и символами в наборе символов. Без ключа данные выглядят как мусор.

Вводящий в заблуждение термин кодировка часто используется для обозначения того, что в действительности является кодировкой символов. Вам следует
помните об этом использовании, но всегда старайтесь использовать термины кодировки символов.

Итак, когда вы вводите текст с клавиатуры или каким-либо другим способом, кодировка символов сопоставляет выбранные вами символы с конкретными байтами в памяти компьютера, а затем для отображения текста считывает байты обратно в символы.

К сожалению, существует множество различных наборов символов и кодировок символов, т.е. много разных способов сопоставления байтов,
кодовые точки и символы. В разделе «Дополнительная информация» для тех, кому интересно, чуть подробнее.

Однако в большинстве случаев вам не нужно знать подробности. Вам просто нужно быть уверенным, что вы прислушиваетесь к советам в
раздел Как это влияет на меня? ниже.

Как в это вписываются шрифты?

Шрифт — это набор определений глифов, т. Е.определения форм, используемых для отображения символов.

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

Данный шрифт обычно покрывает один набор символов или, в случае большого набора символов, например Unicode, только подмножество всех
персонажей в наборе.Если в вашем шрифте нет глифа для определенного символа, некоторые браузеры или программные приложения будут искать отсутствующие глифы в других
шрифты в вашей системе (это будет означать, что глиф будет отличаться от окружающего текста, как записка с требованием выкупа). В противном случае вы обычно
вместо этого вы увидите квадратную рамку, вопросительный знак или какой-либо другой символ. Например:

Как это повлияет на меня?

Как автор или разработчик контента, в настоящее время вы всегда должны выбирать UTF-8
кодировка символов для вашего контента или данных.Эта кодировка Unicode — хороший выбор, потому что вы можете использовать односимвольную кодировку для обработки любого символа, который вам может понадобиться. Это значительно упрощает работу. Использование Unicode
во всей вашей системе также устраняет необходимость отслеживать и конвертировать между различными кодировками символов.

Авторы контента должны узнать, как объявить персонажа
кодировка, используемая для формата документа, с которым они работают.

Обратите внимание, что просто
объявление другой кодировки на вашей странице не изменит байты; вам также нужно сохранить текст в этой кодировке.

Как автор контента, вам необходимо проверить, в какой кодировке ваш редактор или скрипты сохраняют текст и как сохранять текст в UTF-8. (В наши дни это обычно используется по умолчанию.) Вам также может потребоваться проверить, что ваш сервер обслуживает документы с правильным HTTP

Разработчикам необходимо убедиться, что различные части системы могут взаимодействовать друг с другом, понимать, какие кодировки символов
используются и поддерживают все необходимые кодировки и символы.(В идеале вы должны использовать UTF-8 повсюду и избавиться от этой проблемы.)

По ссылкам ниже можно найти дополнительную информацию по этим темам.

В этом разделе представлена ​​небольшая дополнительная информация о сопоставлении байтов, кодовых точек и символов для тех, кому это интересно. Не стесняйтесь просто перейти к разделу Дополнительная литература.

Обратите внимание, что номера кодовых точек обычно выражаются в шестнадцатеричной системе счисления, т.е. основание 16. Например, 233 в шестнадцатеричной форме — это E9.Значения кодовой точки Unicode обычно записываются в форме U + 00E9.

В наборе кодированных символов под названием ISO 8859-1 (также известном как Latin1) значение десятичной кодовой точки для буквы é равно 233. Однако в ISO 8859-5, та же кодовая точка представляет кириллический символ щ.

Эти наборы символов содержат менее 256 символов и напрямую сопоставляют кодовые точки с байтовыми значениями, поэтому кодовая точка со значением 233 представлена ​​одним байтом со значением 233.Обратите внимание, что только контекст определяет, представляет ли этот байт либо é, либо щ.

Есть и другие способы обработки символов из ряда сценариев. Например, с набором символов Unicode вы можете представить оба символа в одном наборе. Фактически, Unicode
содержит в одном наборе, вероятно, все символы, которые вам когда-либо понадобятся. Хотя буква é по-прежнему представлена ​​значением кодовой точки 233,
кириллический символ щ теперь имеет значение кодовой точки 1097.

С другой стороны, 1097 слишком большое число, чтобы его можно было представить одним
байт*. Итак, если вы используете кодировку символов для текста Unicode под названием UTF-8, щ будет представлен двумя байтами. Однако
значение кодовой точки не просто выводится из значения двух байтов, соединенных вместе — требуется более сложное декодирование.

Другой Unicode
символы отображаются в один, три или четыре байта в кодировке UTF-8.

Кроме того, обратите внимание, что буква é также представлена ​​двумя байтами в UTF-8, а не одним байтом, используемым в ISO 8859-1. (Только символы ASCII кодируются одним байтом в UTF-8.)

UTF-8 — это наиболее широко используемый способ представления текста Unicode на веб-страницах, и вы всегда должны использовать UTF-8 при создании веб-страниц и баз данных. Но, в принципе, UTF-8 — лишь один из возможных способов кодирования.
Символы Юникода. Другими словами, одна кодовая точка в наборе символов Unicode может фактически отображаться в разные последовательности байтов, в зависимости от
какая кодировка использовалась для документа.Кодовые точки Unicode могут быть сопоставлены с байтами с использованием любой из кодировок, называемых UTF-8, UTF-16 или UTF-32.
Символ деванагари क с кодовой точкой 2325 (что составляет 915 в шестнадцатеричной системе счисления) будет представлен двумя
байтов при использовании кодировки UTF-16 (09 15), трех байтов с UTF-8 (E0 A4 95) или четырех байтов с UTF-32 (00 00 09 15).

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

Что такое кодирование? — Определение из Техопедии

Что означает кодирование?

Кодирование — это процесс преобразования данных в формат, необходимый для ряда потребностей обработки информации, в том числе:

  • Компиляция и выполнение программы
  • Передача, хранение и сжатие / декомпрессия данных
  • Обработка данных приложения, например преобразование файлов

Кодирование может иметь два значения:

  • В компьютерных технологиях кодирование — это процесс применения определенного кода, такого как буквы, символы и числа, к данным для преобразования в эквивалентный шифр.
  • В электронике кодирование означает аналого-цифровое преобразование.

Techopedia объясняет кодировку


включает использование кода для преобразования исходных данных в форму, которая может использоваться внешним процессом.

Тип кода, используемый для преобразования символов, известен как американский стандартный код для обмена информацией (ASCII), наиболее часто используемая схема кодирования для файлов, содержащих текст. ASCII содержит печатные и непечатаемые символы, которые представляют прописные и строчные буквы, символы, знаки препинания и числа.Некоторым персонажам присваивается уникальный номер.

Стандартная схема ASCII имеет только от нуля до 127 позиций символов; 128–255 не определены. Проблема неопределенных символов решается с помощью кодировки Unicode, которая присваивает номер каждому символу, используемому во всем мире. К другим типам кодов относятся BinHex, Uuencode (кодировка из UNIX в UNIX) и многоцелевые расширения почты Интернета (MIME).

Кодирование также используется для уменьшения размера аудио- и видеофайлов. Каждый формат аудио- и видеофайлов имеет соответствующую программу кодера-декодера (кодека), которая используется для кодирования его в соответствующий формат, а затем декодирования для воспроизведения.

Кодирование не следует путать с шифрованием, которое скрывает контент. Оба метода широко используются в сетях, программировании, беспроводной связи и хранении данных.

Что такое кодирование и декодирование?

Что такое кодирование и декодирование в компьютере?

Кодирование и декодирование используются во многих формах связи, включая вычисления, передачу данных, программирование, цифровую электронику и человеческое общение. Эти два процесса включают изменение формата контента для оптимальной передачи или хранения.

В компьютерах кодирование — это процесс помещения последовательности символов (букв, цифр, знаков препинания и некоторых символов) в специальный формат для эффективной передачи или хранения. Декодирование — это противоположный процесс — преобразование закодированного формата обратно в исходную последовательность символов.

Эти термины не следует путать с шифрованием и дешифрованием , которые сосредоточены на сокрытии и защите данных. (Мы можем шифровать данные без изменения кода или кодировать данные без намеренного сокрытия содержимого.)

Что такое кодирование и декодирование при передаче данных?

Процессы кодирования и декодирования для передачи данных имеют интересное происхождение. Например, азбука Морзе возникла в 1838 году, когда Сэмюэл Морзе создал стандартизированные последовательности сигналов двух длительностей, названные точками и черточками , для использования с телеграфом. Сегодняшние радиолюбители по-прежнему используют Q-сигналы, которые произошли от кодов, созданных генеральным почтмейстером Великобритании в начале 1900-х годов для облегчения связи между британскими кораблями и береговыми станциями.


Manchester было разработано для хранения данных на магнитных барабанах компьютера Manchester Mark 1, построенного в 1949 году. В этой модели кодирования каждая двоичная цифра или бит кодируется сначала в низком, затем в высоком или высоком, а затем в низком уровне за одинаковое время. Также известный как фазовое кодирование , манчестерский процесс кодирования используется в потребительских инфракрасных протоколах, радиочастотной идентификации и связи ближнего поля.

Что такое кодирование и декодирование в программировании?

Доступ в Интернет зависит от кодирования.Унифицированный указатель ресурсов (URL), адрес веб-страницы, может быть отправлен только через Интернет с использованием Американского стандартного кода для обмена информацией (ASCII), который представляет собой код, используемый для текстовых файлов в вычислительной технике.

Вот пример кодировки ASCII для строки

В файле ASCII 7-битное двоичное число представляет каждый символ, который может быть прописными или строчными буквами, числами, знаками препинания и другими общими символами. Однако URL-адреса не могут содержать пробелы и часто содержат символы, которых нет в наборе символов ASCII.Кодирование URL-адресов, также называемое -процентным кодированием , решает эту проблему путем преобразования пробелов — в знак + или с% 20 — и символов, отличных от ASCII, в допустимый формат ASCII.

Другие часто используемые коды в программировании включают BinHex, Multipurpose Internet Mail Extensions, Unicode и Uuencode.

Ниже перечислены некоторые способы использования кодирования и декодирования в различных языках программирования.

На Яве

Кодирование и декодирование в Java — это метод представления данных в другом формате для эффективной передачи информации через сеть или Интернет.Кодировщик преобразует данные в веб-представление. После получения декодер преобразует данные веб-представления в исходный формат.

В Python

В языке программирования Python кодировка представляет строку Unicode как строку байтов. Обычно это происходит, когда вы передаете экземпляр по сети или сохраняете его в файл на диске. Декодирование преобразует строку байтов в строку Unicode. Это происходит, когда вы получаете строку байтов из файла на диске или из сети.

В Swift

В языке программирования Apple Swift модели кодирования и декодирования обычно представляют собой сериализацию данных объекта из строкового формата JavaScript Object Notation. В этом случае кодирование представляет собой сериализацию, а декодирование означает десериализацию. Всякий раз, когда вы сериализуете данные, вы конвертируете их в легко переносимый формат. После транспортировки он преобразуется обратно в исходный формат. Этот подход стандартизирует протокол и обеспечивает возможность взаимодействия между различными языками программирования и платформами.

Что такое кодирование и декодирование в цифровой электронике?

В электронике термины кодирование и декодирование относятся к аналого-цифровому преобразованию и цифро-аналоговому преобразованию. Эти условия могут применяться к любой форме данных, включая текст, изображения, аудио, видео, мультимедиа и программное обеспечение, а также к сигналам в датчиках, телеметрии и системах управления.

Что такое кодирование и декодирование в человеческом общении?

Люди не думают об этом как о процессе кодирования или декодирования, но человеческое общение начинается, когда отправитель формулирует (кодирует) сообщение.Они выбирают сообщение, которое они передадут, и канал связи. Люди делают это каждый день, мало задумываясь о процессе кодирования.

Получатель должен понять (расшифровать) сообщение, определив значение слов и фраз, чтобы правильно интерпретировать сообщение. Затем они могут предоставить обратную связь отправителю.

И отправитель, и получатель в любом процессе связи должны иметь дело с шумом, который может мешать процессу связи. Шум включает в себя различные способы прерывания, искажения или задержки сообщений.Они могут включать в себя фактический физиологический шум, технические проблемы или семантические, психологические и культурные проблемы, которые мешают общению.

Кодирование и декодирование являются неотъемлемой частью всех коммуникаций.

Эти процессы происходят почти мгновенно в любой из этих трех моделей:

  1. Модель трансмиссии. Эта модель коммуникации представляет собой линейный процесс, при котором отправитель передает сообщение получателю.
  2. Модель взаимодействия. В этой модели участники по очереди выполняют функции отправителей и получателей.
  3. Модель транзакции. Здесь коммуникаторы генерируют социальные реальности в культурном, реляционном и социальном контекстах. Они общаются, чтобы установить отношения, взаимодействовать с сообществами и формировать межкультурные союзы. В этой модели участники помечаются как коммуникаторы , а не отправители и получатели.

Расшифровка сообщений на вашем родном языке не требует усилий. Однако, когда язык незнаком, получателю может потребоваться переводчик или такие инструменты, как Google Translate, для декодирования сообщения.

Помимо основ кодирования и декодирования, возможности машинного перевода в последнее время значительно продвинулись вперед. Узнайте больше о технологиях и инструментах машинного перевода .

В какой кодировке используются строки состояния и заголовка HTTP?

RFC 7230, соответствующая часть текущей версии спецификации, довольно ясна и по существу:

Получатель ДОЛЖЕН анализировать сообщение HTTP как последовательность октетов в кодировке, которая является надмножеством US-ASCII *.Анализ HTTP-сообщения как потока символов Юникода без учета конкретной кодировки создает уязвимости безопасности из-за различных способов, которыми библиотеки обработки строк обрабатывают недопустимые многобайтовые последовательности символов, содержащие октет LF (% x0A).

Это позволяет (как минимум) использовать соответствующий синтаксический анализатор UTF-8, потому что UTF-8 избегает кодирования запутанных символов подмножества ASCII в своих многобайтовых кодовых единицах, так, например, % x0A всегда будет правильно распознаваться как фактический символ LF.

Есть еще одно примечание: после того, как вы успешно проанализируете базовое сообщение на пары «ключ-значение» заголовка плюс тело сообщения, вы можете приступить к синтаксическому анализу частей более расслабленным или нестандартным подходом в соответствии с определенными заголовками. Это особенно полезно с заголовком Content-Type RFC 7231:

. Тип носителя

HTTP использует типы Интернет-носителей [RFC2046] в полях заголовка Content-Type (раздел и Accept (раздел 5.3.2), чтобы обеспечить открытую и расширяемую типизацию данных и согласование типов.

RFC2046 посвящен расширению MIME для тел сообщений и, в свою очередь, имеет хороший четкий раздел для параметра Charset:

4.1.2. Параметр кодировки

Критическим параметром, который может быть указан в поле Content-Type для «текстовых / простых» данных, является набор символов. Это указывается параметром charset, например:


  Content-type: text / plain; кодировка = iso-8859-1

Далее объясняется, что другие типы мультимедиа текст / должны использовать ту же семантику кодировки.

Обратите внимание, что Content-Encoding , Transfer-Encoding и Content-Transfer-Encoding (устаревшее) относятся к очень ограниченному набору кодировок для сжатия или разбиения на части — , а не наборов символов.

* Американский национальный институт стандартов, «Набор кодированных символов — 7-битный американский стандартный код для обмена информацией», ANSI X3.4, 1986.

Определение кодировки

Кодирование — это процесс преобразования данных из одной формы в другую.Хотя «кодирование» может использоваться как глагол, оно часто используется как существительное и относится к определенному типу закодированных данных. Существует несколько типов кодирования, включая кодирование изображений, кодирование аудио и видео, а также кодирование символов.

Медиа-файлы часто кодируются для экономии места на диске. Кодируя цифровые аудио-, видео- и графические файлы, их можно сохранять в более эффективном сжатом формате. Закодированные файлы мультимедиа обычно аналогичны по качеству своим исходным несжатым копиям, но имеют гораздо меньшие размеры.Например, аудиофайл WAVE (.WAV), преобразованный в файл MP3 (.MP3), может быть 1/10 размера исходного файла WAVE. Точно так же сжатый видеофайл MPEG (.MPG) может потребовать только часть дискового пространства, как исходный файл цифрового видео (.DV).

Кодировка символов — это еще один тип кодирования, при котором символы кодируются как байты. Поскольку компьютеры распознают только двоичные данные, текст должен быть представлен в двоичной форме. Это достигается путем преобразования каждого символа (который включает буквы, числа, символы и пробелы) в двоичный код.Общие типы кодировки текста включают ASCII и Unicode.

Всякий раз, когда данные кодируются, они могут быть прочитаны только программой, которая поддерживает правильный тип кодирования. Для аудио- и видеофайлов это часто достигается с помощью кодека, который декодирует данные в реальном времени. Большинство текстовых редакторов поддерживают несколько типов кодировки текста, поэтому редко можно найти текстовый файл, который не открывается в стандартном текстовом редакторе. Однако, если текстовый редактор не поддерживает кодировку, используемую в текстовом документе, некоторые или все символы могут отображаться как странные символы, а не как предполагаемый текст.

Обновлено: 23 сентября 2010 г.

TechTerms — Компьютерный словарь технических терминов

Эта страница содержит техническое определение кодирования. Он объясняет в компьютерной терминологии, что означает кодирование, и является одним из многих программных терминов в словаре TechTerms.

Все определения на веб-сайте TechTerms составлены так, чтобы быть технически точными, но также простыми для понимания. Если вы найдете это определение кодировки полезным, вы можете ссылаться на него, используя ссылки для цитирования выше.Если вы считаете, что термин следует обновить или добавить в словарь TechTerms, отправьте электронное письмо в TechTerms!

Подпишитесь на рассылку TechTerms, чтобы получать избранные термины и тесты прямо в свой почтовый ящик. Вы можете получать электронную почту ежедневно или еженедельно.


Руководство по кодированию данных и символов для начинающих

Когда я впервые начал работать с компьютерами, все было в коде ASCII ( Американский стандартный код для обмена информацией )

Однако сегодня, работая с сетевыми протоколами и сетевым программированием, вы встретите множество схем кодирования данных и символов.

В этом руководстве мы рассмотрим базовые схемы кодирования , используемые на компьютерах, а во второй части учебника мы рассмотрим, как данные передаются по сети.

символов, целых чисел, чисел с плавающей запятой и т. Д.

При хранении и передаче данных вам необходимо будет представить следующие типы данных:

  • Знаки и цифры, например, A и 1
  • Целые числа со знаком и без знака, длинные (32 бита) и короткие (16 бит)
  • Одиночная и двойная с плавающей точкой
  • Логическое i.e Верно и неверно

Так как же компьютер хранит букву А или цифру 1?

Как компьютер хранит число вроде 60101? или 62.0101?

Как передать букву A и т. Д. На другой компьютер по сети?

Компьютеры и кодировка символов

Чтобы сохранить текст в виде двоичных данных, необходимо указать кодировку для этого текста.


Computers могут использовать различные схемы кодирования символов.

Пока данные остаются на компьютере, действительно неважно, как они закодированы.

Однако для передачи данных между системами необходимо принять стандартную схему кодирования.

В 1968 году ASCII (Американский стандартный код для обмена информацией) был принят в качестве стандарта для кодирования текста для обмена данными.


ASCII — это американский стандарт, предназначенный для кодирования английских символов и знаков препинания, используемых на пишущих машинках и телетайпах той эпохи (1960-е годы).

ASCII использует 8 бит, хотя фактически используются только 7 бит.

Поскольку код ASCII был разработан во время эксплуатации телетайпов, он также содержит управляющих кодов , предназначенных для управления телетайпом.

В таблице ниже приведены сводные данные о присвоении кодов.

Таблица ASCII — сводка кодов

Десятичное значение Использование
0-31 Коды управления
32-127 Печатные символы
128-255 Не используется

ASCII Расширения

Поскольку ASCII не может кодировать символы, такие как знак фунта £, или общие символы, встречающиеся в немецком и других европейских языках, были разработаны различные расширения.

Эти расширения сохранили набор символов ASCII и использовали неиспользуемую часть адресного пространства и управляющие коды для дополнительных символов.

Наиболее распространенными являются windows 1252 и Latin-1 (ISO-8859).

Windows 1252 и 7-битный ASCII были наиболее широко используемыми схемами кодирования до 2008 года, когда UTF-8 стал наиболее распространенным.

ISO-8859-1, ISO-8859-15, Latin-1

ISO-8859 — это 8-битная кодировка символов, которая расширяет 7-битную схему кодирования ASCII и используется для кодирования большинства европейских языков.Подробности см. В вики.

ISO-8859-1 , также известный как Latin-1, является наиболее широко используемым, поскольку его можно использовать для большинства распространенных европейских языков, например, немецкого, итальянского, испанского, французского и т. Д.

Это очень похоже на схему кодирования windows-1252, но не идентично см. — Сравнение символов в Windows-1252, ISO-8859-1, ISO-8859-15


Из-за необходимости кодирования символов иностранного языка и других графических символов был разработан набор символов Unicode и схемы кодирования.

Наиболее распространенные схемы кодирования:

UTF-8 — это наиболее часто используемая схема кодирования, используемая в современных компьютерных системах и компьютерных сетях.

Это схема кодирования переменной ширины, которая была разработана для обеспечения полной обратной совместимости с ASCII. Он использует от 1 до 4 байтов. — вики

Наборы символов и схемы кодирования

Разница между этими двумя терминами не всегда ясна, и термины, как правило, используются как взаимозаменяемые.

Набор символов — это список символов, тогда как схема кодирования — это то, как они представлены в двоичном формате.

Лучше всего это видно с Unicode.

В схемах кодирования UTF-8, UTF-16 и UTF-32 используется набор символов Unicode, но символы кодируются по-разному.

ASCII — это набор символов и схема кодирования.

Метка порядка байтов (BOM)

Метка порядка байтов (BOM) — это символ Unicode, U + FEFF , который появляется как магическое число в начале текстового потока и может сигнализировать о нескольких вещах программе, потребляющей текст: –Wiki

  • Порядок байтов или порядок байтов текстового потока;
  • Тот факт, что кодировка текстового потока — Unicode, с высокой степенью достоверности;
  • В какой кодировке Unicode кодируется текстовый поток.

Спецификация отличается для текста в кодировке UTF-8, UTF-16 и UTF-32

Следующая таблица, взятая из Wiki, показывает это.

Редакторы спецификаций и текста

Обычно большинство редакторов обрабатывают спецификации правильно, и они не отображаются.

Программное обеспечение Microsoft, такое как Блокнот, добавляет спецификацию при сохранении данных как UTF-8 и не может интерпретировать текст без спецификации , если это не чистый ASCII.

Пример спецификации

На снимке экрана ниже показан простой текстовый файл, содержащий текст TEST , закодированный как UTF-8 в блокноте:

Вы должны заметить, что символы спецификации не видны.

Ниже представлен вывод простой программы на Python, которая отображает содержимое файла, содержащего символы TEST (4 символа), сохраненные как ASCII , UTF-8, , UTF-16-BE и UTF- 16-LE

Ссылка — Знак порядка байтов (BOM) в HTML

Общие вопросы и ответы

Q-Как узнать, какая кодировка символов используется в файле?

A- Обычно вы этого не делаете, но некоторые текстовые редакторы, такие как notepad ++, отображают кодировку.Если вы получаете файл, который закодирован с использованием кодировки, отличной от ожидаемой, вы можете получить сообщение об ошибке при попытке прочитать его.

Q- Мой файл находится в формате ASCII, но он нормально декодируется с использованием декодера UTF-8. Это почему?

A- Потому что UTF-8 обратно совместим с ASCII.

Целые числа и числа с плавающей запятой — большие и

с прямым порядком байтов

Примечание: Поскольку UTF-16 и UTF-32 используют 2- или 4-байтовые целые числа, следующее применяется к кодированию текста с их использованием

Количество байтов, выделенных для целого числа или числа с плавающей запятой, зависит от системы.


Tutorials охватывает это для языка программирования C , и я буду использовать его для иллюстрации

Если мы возьмем короткое целое число как 2 байта и длинное целое число как 4 байта.

Поскольку они используют несколько байтов, возникает несколько вопросов:

  • Какой байт представляет самую значительную часть числа?
  • При хранении в памяти, какой байт сохраняется первым
  • При отправке по сети, какой байт отправляется первым.

Порядок байтов относится к последовательному порядку, в котором байты упорядочиваются в более крупные числовые значения при сохранении в памяти или при передаче по цифровым каналам связи.Порядок байтов
представляет интерес в информатике, потому что обычно используются два конфликтующих и несовместимых формата: слова могут быть представлены в формате с прямым порядком байтов или с прямым порядком байтов , в зависимости от того, какие биты, байты или другие компоненты упорядочены из большой конец (самый старший бит) или младший конец (младший бит.
В формате с прямым порядком байтов , всякий раз, когда адресуется память или отправляется / сохраняется слова побайтно, старший значащий байт — байт, содержащий самый старший бит — сохраняется сначала (имеет наименьший адрес) или отправляется первым, затем следующие байты сохраняются или отправляются в порядке убывания значимости, причем наименее значимый байт — тот, который содержит наименее значимый бит — сохраняется последним (с наивысшим адресом) или отправляется последним.


На приведенной ниже иллюстрации с использованием Python показано целое число 16, представленное как 4 байта с использованием порядка больших и младшего порядка байтов.

Порядок байтов в сети и порядок байтов в системе

Сетевой порядок байтов относится к порядку байтов при отправке данных по сети. (TCP / IP обычно Big Endian ).

Это означает, что старший байт отправляется первым.

Порядок байтов системы или хоста указывает на то, как байты располагаются при хранении в памяти хост-системы.

ОС Windows — это Little Endian .

Ref- Bit and Byte Видео с заказом

Связанные руководства

Оцените? И используйте Комментарии, чтобы сообщить мне больше

Encoding and Decoding — Communication for Business Professionals

В общих чертах, люди общаются посредством процесса кодирования и декодирования . Кодировщик — это человек, который разрабатывает и отправляет сообщение. Как показано на рисунке 1.1 ниже, кодировщик должен определить, как сообщение будет принято аудиторией, и внести коррективы, чтобы сообщение принималось так, как они хотят.

Кодирование — это процесс превращения мыслей в общение. Кодировщик использует «носитель» для отправки сообщения — телефонный звонок, электронную почту, текстовое сообщение, личную встречу или другой инструмент связи. Уровень сознательной мысли, которая используется при кодировании сообщений, может быть разным. Кодировщик также должен учитывать любой «шум», который может помешать его сообщению, например, другие сообщения, отвлекающие факторы или влияния.

Затем аудитория «декодирует» или интерпретирует сообщение для себя. Декодирование — это процесс превращения общения в мысли. Например, вы можете понять, что голодны, и закодировать следующее сообщение, чтобы отправить своему соседу по комнате: «Я голоден. Хочешь сегодня съесть пиццу? » Когда ваш сосед по комнате получает сообщение, он расшифровывает ваше сообщение и превращает его в мысли, чтобы придать смысл.

Рисунок 1.1 . Коммуникационный процесс. Кодирование, мультимедиа и декодирование (Хокинс, 2016).

Конечно, вы не просто общаетесь устно — у вас есть различные варианты или каналы для общения. Закодированные сообщения отправляются через канал или сенсорный маршрут, по которому сообщение поступает к получателю для декодирования. Хотя сообщение может быть отправлено и получено с использованием любого сенсорного пути (зрение, обоняние, прикосновение, вкус или звук), большая часть общения происходит через зрительные (зрительные) и / или слуховые (звуковые) каналы. Если у вашего соседа по комнате есть наушники и он увлечен видеоигрой, вам может потребоваться привлечь его внимание, махнув руками, прежде чем вы сможете спросить его об ужине.

Модель передачи коммуникации описывает коммуникацию как линейный односторонний процесс, в котором отправитель намеренно передает сообщение получателю (Ellis & McClintock, 1990). Эта модель фокусируется на отправителе и сообщении в рамках взаимодействия. Хотя получатель включен в модель, эта роль рассматривается скорее как цель или конечная точка, чем как часть текущего процесса. Вам остается предположить, что получатель либо успешно принимает и понимает сообщение, либо нет.Подумайте о том, как человек из радиостудии отправляет вам радиосообщение, которое слушает вас в машине. Отправитель — диктор, который кодирует словесное сообщение, которое передается радиовышкой через электромагнитные волны (канал) и в конечном итоге достигает ваших (получателя) ушей через антенну и динамики для декодирования. Диктор радио на самом деле не знает, получили ли вы его сообщение или нет, но если оборудование работает и на канале отсутствуют помехи, то есть большая вероятность, что сообщение было успешно получено.

Модель взаимодействия общения описывает общение как процесс, в котором участники чередуют позиции отправителя и получателя и генерируют смысл, отправляя сообщения и получая обратную связь в физическом и психологическом контекстах (Schramm, 1997). Вместо того, чтобы иллюстрировать общение как линейный односторонний процесс, модель взаимодействия включает обратную связь, которая делает общение более интерактивным, двусторонним процессом. Отзыв включает сообщения, отправленные в ответ на другие сообщения.Например, ваш инструктор может ответить на вопрос, который вы подняли во время обсуждения в классе, или вы можете указать на диван, когда ваш сосед по комнате спросит вас, где находится пульт дистанционного управления. Включение цикла обратной связи также приводит к более сложному пониманию ролей участников в коммуникативной встрече. Вместо одного отправителя, одного сообщения и одного получателя в этой модели используются два отправителя-получателя, которые обмениваются сообщениями. Каждый участник чередует роли отправителя и получателя, чтобы поддерживать общение.Хотя это кажется ощутимым и преднамеренным процессом, вы очень быстро и часто без сознательного обдумывания чередуете роли отправителя и получателя.

Модель транзакции коммуникации описывает коммуникацию как процесс, в котором коммуникаторы генерируют социальные реальности в социальных, реляционных и культурных контекстах. В этой модели вы не просто общаетесь, чтобы обмениваться сообщениями; вы общаетесь, чтобы создавать отношения, формировать межкультурные союзы, формировать свои представления о себе и вступать с другими в диалог для создания сообществ.Короче говоря, вы не говорите о своих реалиях; общение помогает конструировать свои реальности (и реальности других людей).

Роли отправителя и получателя в транзакционной модели взаимодействия значительно отличаются от других моделей. Вместо того, чтобы обозначать участников как отправителей и получателей, участники взаимодействия называются коммуникаторами. В отличие от модели взаимодействия, которая предполагает, что участники чередуют позиции отправителя и получателя, модель транзакции предполагает, что вы одновременно являетесь отправителем и получателем.Например, при встрече с новым другом вы отправляете устные сообщения о своих интересах и прошлом, а ваш собеседник реагирует невербально. Вам не нужно ждать, пока вы закончите отправлять устное сообщение, чтобы начать получать и расшифровывать невербальные сообщения вашего нового друга.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *