Visual studio 2019 кодировка windows 1251

Практическое руководство. Сохранение и открытие файлов с использованием определенной кодировки Вы можете сохранять файлы с определенной кодировкой для

Практическое руководство. Сохранение и открытие файлов с использованием определенной кодировки

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

Сохранение файла с кодировкой

В меню Файл выберите Сохранить файл как и затем нажмите кнопку раскрывающегося списка рядом с кнопкой Сохранить.

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

В разделе Кодировка выберите нужную кодировку для файла.

При необходимости в разделе Завершение строк выберите формат для знаков конца строки.

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

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

Чтобы сохранить файл проекта с кодировкой, необходимо выгрузить проект. Только после этого станет доступна команда Сохранить файл как.

Открытие файла с кодировкой, являющегося частью проекта

В обозревателе решений щелкните файл правой кнопкой мыши и выберите команду Открыть с помощью.

В диалоговом окне Открыть с помощью выберите редактор для открытия файла.

Многие редакторы Visual Studio, такие как редактор форм, автоматически определяют кодировку и открывают файл соответствующим образом. Если вы воспользовались редактором, который позволяет указать кодировку, появляется диалоговое окно Кодировка.

В диалоговом окне Кодировка выберите кодировку, которую должен использовать редактор.

Открытие файла с кодировкой, не являющегося частью проекта

В меню Файл наведите указатель мыши на пункт Открыть, выберите элемент Файл или Файл из Интернета, а затем выберите нужный файл.

Нажмите кнопку раскрывающегося списка рядом с кнопкой Открыть и выберите пункт Открыть с помощью.

Превью к статье о том, как исправить русский язык в visual studio

При написании программ в среде Visual studio иногда возникает необходимость вывода текста на русском языке. Казалось бы, что тут сложного? Берёшь и выводишь! А вот нет, иначе бы не было кучи форумов и страничек в интернете с этой проблемой.
А проблема заключается в кодировке, причём все сайты пишут работающие способы, но, к сожалению, далеко не у всех. В этой статье мы расскажем вам о том, как действительно нужно исправлять эту проблему.

Итак, вы написали программу, в которой решили вывести строку русскими буквами, например, «Русский язык в консоли!». Вы запускаете программу, но вместо заветной строки видите там «кракозябры»! Что же делать?

В результате видим кракозябры

Чаще всего пишут, что достаточно лишь добавить setlocale(LC_ALL, «Russian»); в начале программы (для C программ требуется подключение библиотеки locale.h: #include <locale.h> ). Сделаем это. Теперь программа должна выглядеть так:

А возможный результат может выглядеть так:

Результат может быть как корректным, так и кракозябристым

Запустим её, если русский язык уже выводится — поздравляем! Проблема решена! Если нет, то идём дальше.

В верхнем меню выберете пункт файл , Сохранить <название вашего файла> как . В открывшемся окне вместо Сохранить выберем Сохранить с кодировкой , подтвердим, что желаем заменить файлы и выберем кодировку Кириллица (Windows) — кодовая страница 1251 .

Сохраняем файл в другой кодировке

Выбираем сохранение с кодировкой

Выбираем кодировку Кириллица (Windows) - кодовая страница 1251

Нажмём ОК и соберём программу заново.

Нужная кодировка - Кириллица (Windows) - кодовая страница 1251

Запустим программу вновь и теперь русский язык будет корректно выводиться!

Программа запустилась и русский язык выводится

UPD: Ещё один способ заставить работать русский язык

Если ничего из вышеперечисленного не помогло, значит проблема в кодировке самой консоли. А её можно изменить с помощью команды system(«chcp 1251»); , то есть программа будет выглядеть так:

Фото Перминова Андрея, автора этой статьи

Программист, сооснователь programforyou.ru, в постоянном поиске новых задач и алгоритмов

Языки программирования: Python, C, C++, Pascal, C#, Javascript

Выпускник МГУ им. М.В. Ломоносова

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

Как заставить Visual Studio 2019 сохранять исходники в UTF-8?

Собственно, перерыл все настройки, не могу найти. Сохранять файлы в UTF-8 по-одному — не вариант. Подскажите.

Знаете кого-то, кто может ответить? Поделитесь ссылкой на этот вопрос по почте, через Твиттер или Facebook.

Посмотрите другие вопросы с метками кодировка utf-8 encoding visual-studio-2019 или задайте свой вопрос.

Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2022.6.10.42345

Нажимая «Принять все файлы cookie», вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

  • Remove From My Forums
  • Вопрос

  • Собственно, проблема нерабочей кириллицы в cmd в Visual Studio, в консольных приложениях(классические десктопные приложения на c++) при
    применении в программе кодировки chcp 1251(код: system(«chcp 1251»); ) в Windows 10 19041.172 Home Single language(english) осталась нерешенной. Другие операторы типа setlocale и т.д. тоже не имеют действия. Некоторое время
    назад находил решение на форуме microsoft community, заключавшееся в создании файла реестра для windows, а теперь не могу найти его. В файле реестра кодировка chcp 1251, 1252, 1253, 1254 и вроде что-то ещё менялась на chcp 1251. К сожалению,
    сам пока не умею создавать подобные вещи, так что прошу помощи :)  

Ответы

    • Помечено в качестве ответа

      3 апреля 2020 г. 3:45

9 января 2018

Время чтения: 2 минуты

Превью к статье о том, как исправить русский язык в visual studio

При написании программ в среде Visual studio иногда возникает необходимость вывода текста на русском языке. Казалось бы, что тут сложного? Берёшь и выводишь! А вот нет, иначе бы не было кучи форумов и страничек в интернете с этой проблемой.
А проблема заключается в кодировке, причём все сайты пишут работающие способы, но, к сожалению, далеко не у всех. В этой статье мы расскажем вам о том, как действительно нужно исправлять эту проблему.

Итак, вы написали программу, в которой решили вывести строку русскими буквами, например, «Русский язык в консоли!». Вы запускаете программу, но вместо заветной строки видите там «кракозябры»! Что же делать?

#include <iostream>

int main() {
	std::cout << "Русский язык в консоли!" << std::endl;
	getchar();
	return 0;
}

Программа, выводящая русскую строку в visual studio

В результате видим кракозябры

В результате видим кракозябры

Чаще всего пишут, что достаточно лишь добавить setlocale(LC_ALL, "Russian"); в начале программы (для C программ требуется подключение библиотеки locale.h: #include <locale.h>). Сделаем это. Теперь программа должна выглядеть так:

#include <iostream>
#include <locale.h>

int main() {
	setlocale(LC_ALL, "Russian");
	std::cout << "Русский язык в консоли!" << std::endl;
	getchar();
	return 0;
}

Программа, выводящая русскую строку в visual studio

А возможный результат может выглядеть так:

Результат может быть как корректным, так и кракозябристым

Результат может быть как корректным, так и кракозябристым

Запустим её, если русский язык уже выводится — поздравляем! Проблема решена! Если нет, то идём дальше.

В верхнем меню выберете пункт файл, Сохранить <название вашего файла> как. В открывшемся окне вместо Сохранить выберем Сохранить с кодировкой, подтвердим, что желаем заменить файлы и выберем кодировку Кириллица (Windows) - кодовая страница 1251.

Сохраняем файл в другой кодировке

Сохраняем файл в другой кодировке

Выбираем сохранение с кодировкой

Выбираем сохранение с кодировкой

Выбираем кодировку Кириллица (Windows) - кодовая страница 1251

Выбираем кодировку Кириллица (Windows) — кодовая страница 1251

Нажмём ОК и соберём программу заново.

Нужная кодировка - Кириллица (Windows) - кодовая страница 1251

Нужная кодировка — Кириллица (Windows) — кодовая страница 1251

Запустим программу вновь и теперь русский язык будет корректно выводиться!

Программа запустилась и русский язык выводится

Программа запустилась и русский язык выводится

UPD: Ещё один способ заставить работать русский язык

Если ничего из вышеперечисленного не помогло, значит проблема в кодировке самой консоли. А её можно изменить с помощью команды system("chcp 1251");, то есть программа будет выглядеть так:

#include <iostream>
#include <locale.h>
#include <cstdlib>

int main() {
	setlocale(LC_ALL, "Russian"); // задаём русский текст
	system("chcp 1251"); // настраиваем кодировку консоли
	std::cout << "Русский язык в консоли!" << std::endl;
	getchar();
	return 0;
}

Фото Перминова Андрея, автора этой статьи

Программист, сооснователь programforyou.ru, в постоянном поиске новых задач и алгоритмов

Языки программирования: Python, C, C++, Pascal, C#, Javascript

Выпускник МГУ им. М.В. Ломоносова

Почему не работает русский язык в консоли?

Каждый раз при компиляции нового проекта в Visual Studio 2019 вылазит это предупреждение (если в нём есть русские символы)
5faa30cc1275e294044810.png
Как это исправить?
Я пробовал сохранять файл с кодировкой Windows 1251 — не помогло. Русские символы отображаются некорректно. Предположительно, проблема в том, что изначально не установил русский язык в студию.


  • Вопрос задан

    более двух лет назад

  • 840 просмотров

Сохраните исходники в кодировке cp866 — это кодировка по умолчанию в консоли винды.
Если у вас лаба или какой-то тест, то этого будет достаточно.
Но на самом деле это не решение проблемы. В консоли винды кодировку можно менять в самой консоли с помощью команды chcp. Поэтому нормальным выходом из ситуации будет:
1.Исходники писать в UTF8 и использовать широкие символы для хранения строк.
2.Узнаем кодировку консоли
3.Перед выводом перекодируем текст в кодировку консоли, только потом выводим
4.После ввода текста перекодируем введенный текст в UTF и дальше работаем с UTF.

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

Пригласить эксперта


  • Показать ещё
    Загружается…

05 февр. 2023, в 01:09

20000 руб./за проект

05 февр. 2023, в 00:09

5000 руб./за проект

04 февр. 2023, в 20:45

1000 руб./за проект

Минуточку внимания

I did the search, but only found ways to change the encoding for individual files. I want to start projects with the encoding already configured as UTF-8.

asked Dec 26, 2016 at 18:54

1

I found two ways

Alternate

There is alternate way, please try it

Tools->Options->Environment->Documents

enter image description here

The last

If that can’t you can try to save it as UTF-8, you can save as with advanced options

enter image description here

Community's user avatar

answered Aug 2, 2017 at 8:11

huoxudong125's user avatar

huoxudong125huoxudong125

1,8862 gold badges25 silver badges41 bronze badges

2

Visual Studio supports EditorConfig files (https://editorconfig.org/)

Visual Studio (VS2017 and later) searches for a file named ‘.editorconfig’ in the directory containing your source files, or anywhere above this directory in the hierarchy. This file can be used to direct the editor to use utf-8. I use the following:

[*]
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
indent_style = space
indent_size = 4

The [*] line is a mask and means for all files — the scope of the commands can be reduced using e.g. [*.{h,cpp}]

There are further possibilities, particularly for C# files. Full details can be found at https://learn.microsoft.com/en-us/visualstudio/ide/create-portable-custom-editor-options?view=vs-2019

answered Jan 28, 2021 at 20:50

AndyK's user avatar

AndyKAndyK

3543 silver badges6 bronze badges

1

answered May 24, 2020 at 14:45

Fuyan Yuan's user avatar

Tools->Options->Text Editor->General

answered Dec 26, 2016 at 19:00

Emiliano Cervantes's user avatar

1

/utf-8 (Задайте для UTF-8 исходного кода и кодировки выполнения значение).

Задает как исходную кодировку, так и кодировку выполнения в виде UTF-8 .

Синтаксис

Remarks

С помощью параметра можно /utf-8 указать как кодировку исходного кода, так и кодировку выполнения, используя UTF-8 . Он эквивалентен указанию /source-charset:utf-8 /execution-charset:utf-8 в командной строке. Любой из этих параметров также включает /validate-charset параметр по умолчанию. Список поддерживаемых идентификаторов кодовых страниц и имен наборов символов см. в разделе идентификаторы кодовых страниц.

по умолчанию Visual Studio обнаруживает метку порядка следования байтов, чтобы определить, имеет ли исходный файл формат в кодировке юникод, UTF-16 например или UTF-8 . Если метка порядка следования байтов не найдена, предполагается, что исходный файл кодируется в кодовой странице текущего пользователя, если не указана кодовая страница с помощью /utf-8 или /source-charset параметра. Visual Studio позволяет сохранить исходный код C++ в любой из нескольких кодировок символов. Сведения о кодировках исходного кода и выполнения см. в разделе наборы символов в документации по языку.

установка параметра в Visual Studio или программными средствами

Установка данного параметра компилятора в среде разработки Visual Studio

Откройте диалоговое окно Окна свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.

Выберите страницу свойств Свойства> конфигурацииC/C++>Командная строка .

В окне Дополнительные параметрыдобавьте /utf-8 параметр, чтобы указать предпочтительную кодировку.

Кодировки и окончания строк

В Visual Studio следующие символы интерпретируются как разрывы строк:

CR LF: возврат каретки + перевод строки, символы Юникода 000D + 000A

LF: перевод строки, символ Юникода 000A

NEL: следующая строка, символ Юникода 0085

LS: разделитель строки, символ Юникода 2028

PS: разделитель абзаца, символ Юникода 2029

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

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

Дополнительные параметры сохранения

Чтобы определить тип символов разрыва строки, можно использовать параметры в диалоговом окне Файл > Дополнительные параметры сохранения. Кроме того, с помощью этих параметров можно изменить кодировку файла.

Диалоговое окно "Дополнительные параметры сохранения"

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

  1. Выберите Инструменты, Настроить,
  2. Откройте вкладку Команды, выберите переключатель Строка меню и в соответствующем раскрывающемся списке выберите Файл. Нажмите кнопку Добавить команду.
  3. В диалоговом окне Добавление команды в разделе Категории выберите Файл, а затем в списке Команды выберите элемент Дополнительные параметры сохранения. Нажмите кнопку OK.
  4. С помощью кнопок Вверх и Вниз переместите команду в нужное место в меню. Чтобы закрыть диалоговое окно Настройки, нажмите кнопку Закрыть. Дополнительные сведения см. в разделе Настройка меню и панелей инструментов.

Кроме того, чтобы открыть диалоговое окно Дополнительные параметры сохранения, можно выбрать пункт меню Файл > Сохранить <file> как. В диалоговом окне Сохранить файл как щелкните треугольник раскрывающегося списка рядом с кнопкой Сохранить и выберите пункт Сохранить с кодировкой.

Собственно, перерыл все настройки, не могу найти. Сохранять файлы в UTF-8 по-одному — не вариант. Подскажите.

Знаете кого-то, кто может ответить? Поделитесь ссылкой на этот вопрос по почте, через Твиттер или Facebook.

Посмотрите другие вопросы с метками кодировка utf-8 encoding visual-studio-2019 или задайте свой вопрос.

Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2022.6.2.42279

Нажимая «Принять все файлы cookie», вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

What

It is possible with EditorConfig.

EditorConfig helps developers define and maintain consistent coding
styles between different editors and IDEs.

This also includes file encoding.

EditorConfig is built-in Visual Studio 2017 by default, and I there were plugins available for versions as old as VS2012. Read more from EditorConfig Visual Studio Plugin page.

How

You can set up a EditorConfig configuration file high enough in your folder structure to span all your intended repos (up to your drive root should your files be really scattered everywhere) and configure the setting charset:

charset: set to latin1, utf-8, utf-8-bom, utf-16be or utf-16le to
control the character set.

You can add filters and exceptions etc on every folder level or by file name/type should you wish for finer control.

Once configured then compatible IDEs should automatically do it’s thing to make matching files comform to set rules. Note that Visual Studio does not automatically convert all your files but do its bit when you work with files in IDE (open and save).

What next

While you could have a Visual-studio-wide setup, I strongly suggest to still include an EditorConfig root to your solution version control, so that explicit settings are automatically synced to all team members as well. Your drive root editorconfig file can be the fallback should some project not have their own editorconfig files set up yet.

What

It is possible with EditorConfig.

EditorConfig helps developers define and maintain consistent coding
styles between different editors and IDEs.

This also includes file encoding.

EditorConfig is built-in Visual Studio 2017 by default, and I there were plugins available for versions as old as VS2012. Read more from EditorConfig Visual Studio Plugin page.

How

You can set up a EditorConfig configuration file high enough in your folder structure to span all your intended repos (up to your drive root should your files be really scattered everywhere) and configure the setting charset:

charset: set to latin1, utf-8, utf-8-bom, utf-16be or utf-16le to
control the character set.

You can add filters and exceptions etc on every folder level or by file name/type should you wish for finer control.

Once configured then compatible IDEs should automatically do it’s thing to make matching files comform to set rules. Note that Visual Studio does not automatically convert all your files but do its bit when you work with files in IDE (open and save).

What next

While you could have a Visual-studio-wide setup, I strongly suggest to still include an EditorConfig root to your solution version control, so that explicit settings are automatically synced to all team members as well. Your drive root editorconfig file can be the fallback should some project not have their own editorconfig files set up yet.

Зачастую у программистов появляются проблемы с русским языком в консоли при загрузке в неё текстового файла — вместо кириллицы появляются какие-то непонятные символы или вопросительные знаки. Данная проблема очень легко решается — нужно просто сменить кодировку файла на UTF-8 или на Юникод (либо на какую-либо другую, с которой консоль заработает). Как это сделать, вы узнаете в нашей статье.Итак, если у вас в консоли вместо кириллицы написано что-то похожее на символы с нижнего изображения, либо просто непонятный набор неизвестных символов, то всё дело в неправильной кодировке файла.

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ru

Исправить данную проблему не составит труда.

Проблемы с кодировкой кириллицы в блокноте

У каждого на компьютере имеется блокнот — самый простой помощник в данной проблеме. Всё, что нам надо — это открыть «сломанный» файл в блокноте (главное, чтобы в нём русский язык отображался правильно, иначе придётся заново переписывать текст), затем нажать в блокноте вкладку «Файл», а затем «Сохранить как…». В низу появившегося окна можно будет найти надпись «Кодировка» с комбобоксом, в котором Вам надо выбрать UTF-8 либо Юникод (это почти одинаковые кодировки, но если одна из них не заработает, то выбирайте вторую).

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ru

После сохранения файла попробуйте запустить консоль ещё раз, всё должно заработать.

Проблемы с кодировкой кириллицы в WordPad

Текстовым редактором WordPad также можно починить файл. Делается это идентично способу с блокнотом. Опять надо файл «Сохранить как…», однако выбор кодировки здесь не задан отдельно, как в блокноте, а вынесен в «Тип файла».

Нам нужно выбрать тип «Текстовый документ в Юникоде» и таким образом сохранить файл.

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ru

Проблемы с кодировкой кириллицы в Visual Studio

Вариант 1. Изменение кодировки файла.

Если ваш файл открыт у вас в Visual Studio, то для смены кодировки нужно выполнить следующие действия: В рабочей среде кликнуть на вкладке файла:

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ru

Затем перейди в меню «Файл» -> «Дополнительные параметры сохранения..».

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ru

В появившемся окне смотрим огромный список с названием «Кодировка» и выбираем там Юникод:

Проблемы с кодировкой кириллицы в консоли. Смена кодировки - vscode.ruПосле нажимаем «ОК», и всё готово!

Вариант 2. Изменение кодировки программно.

Кроме того, в Visual Studio можно легко поменять кодировку файла в самом коде. Делается это, на примере работы с классом StreamReader, вот так:

StreamReader sr = new StreamReader(«E:\textfile.txt», System.Text.Encoding.Default);

Как вы видите, после стандартной процедуры указания пути файла можно придать объекту ещё один аргумент — значение кодировки. В аргументе System.Text.Encoding.Default можно также выбрать несколько видов кодировок и посмотреть, при какой кодировке файл выдаст нормальный русский текст. Вместо значения Default можно подставить UTF8, ASCII, Unicode и ещё несколько других значений, но желательно не отклоняться от значения, приведенного в примере выше.

Спасибо за внимание! Надеемся, наша статья помогла Вам. Будем рады комментариям и вопросам.

Понравилась статья? Поделить с друзьями:
  • Visual studio 2019 download for windows 10
  • Visual studio 2019 community скачать бесплатно для windows 10
  • Visual studio 2017 скачать бесплатно для windows 10 x64 2017
  • Visual studio 2017 не устанавливается на windows 10
  • Visual studio 2017 для windows 7 64 bit