# Общая кодировка в клиент-серверном приложении C#

**URL:** <https://forum.itvdn.com/t/obshhaya-kodirovka-v-klient-servernom-prilozhenii-c/2627>\
**Category:** C#\
**Created:** [22.10.2018 12:01:34 UTC](https://forum.itvdn.com/t/obshhaya-kodirovka-v-klient-servernom-prilozhenii-c/2627 "2018-10-22T12:01:34Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![realvovan99](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/r/aeb1de/32.png) [@realvovan99](https://forum.itvdn.com/u/realvovan99)\
**Post date:** [22.10.2018 12:01:34 UTC](https://forum.itvdn.com/t/obshhaya-kodirovka-v-klient-servernom-prilozhenii-c/2627/1 "2018-10-22T12:01:34Z")

</div>

Как установить общую кодировку в клиент-серверном приложении?

---

<div class="post-metadata">

**Author:** ![denisnifedov](https://forum.itvdn.com/letter_avatar_proxy/v4/letter/d/9d8465/32.png) [@denisnifedov](https://forum.itvdn.com/u/denisnifedov)\
**Post date:** [22.10.2018 12:51:37 UTC](https://forum.itvdn.com/t/obshhaya-kodirovka-v-klient-servernom-prilozhenii-c/2627/2 "2018-10-22T12:51:37Z")

</div>

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

Вам же нужно перевести все в однобайтовую кодировку Win-1251. Это можно сделать в два шага: - преобразовать то, что прислано, в юникод (например, с помощью функции WinAPI MultiByteToWideChar, указав UFT8 в качестве кодировки) - преобразовать строку из юникода в нужную кодировку (например, используя функцию WideCharToMultiByte, указав число 1251 первым параметром функции) Как вариант, можно воспользоваться функциями стандартной библиотеки C.

Взято из Мейл ответов, если что)
