У меня есть файлы javascript, которые необходимо сохранить в UTF-8 (без BOM), каждый раз, когда я конвертирую их в правильный формат в Notepad ++ , они возвращаются обратно в UTF-8 с BOM, когда я открываю их в Visual Studio. Как я могу остановить VS2010 от этого?
Другой вопрос, является ли UTF-8 без подписи в Visual Studio таким же, как UTF-8 без спецификации?
Ответы:
BOM или Byte Order Mark иногда раздражают. Visual Studio не изменяет файл, пока вы не сохраните его (как сказал Ганс).
И вот решение вашей проблемы: если вы хотите сохранить файл с другими кодировками, выберите «Сохранить как», нажмите кнопку «Сохранить» в диалоговом окне «Файл» и выберите «Сохранить с кодировкой». Или, если вы хотите навсегда избавиться от этой настройки, просто откройте меню «Файл» и выберите «Дополнительные параметры сохранения», и там вы должны выбрать «UTF-8 без подписи» (и это также ответило на ваш последний вопрос :). Да, «UTF-8 без подписи» такой же, как и без спецификации.
источник
Теперь с картинками.
Перейти к
File
->Save As
.Затем на кнопку Сохранить нажмите на треугольник и нажмите
Save with Encoding...
.Нажмите кнопку ОК, чтобы перезаписать файл, затем из списка кодировок найдите
UTF-8 Without signature
-> НажмитеOK
.Надеюсь, это сэкономит вам время.
источник
Я создал расширение Fix File Encoding, которое не позволяет Visual Studio 2010+ добавлять спецификации в файлы UTF-8.
источник
К сожалению, это не работает с файлами csproj. Отсутствует опция «Advanced save option», и даже если вы установили ее в «UTF-8 без подписи» для файла cs, файлы csproj по-прежнему сохраняются в спецификации. Если вы используете VSS, он по-прежнему жалуется на файлы проекта.
источник
UTF-8 - «Сохранить как» (без подписи) По умолчанию - Запрос на включение значения по умолчанию для UTF без подписи
источник
charset
в .editorconfig github.com/editorconfig/editorconfig-visualstudio/issues/…Для vs2010 c ++ будут проблемы с UTF8 без спецификации, когда исходные файлы содержат многобайтовые символы (например, китайский).
Эти символы не будут распознаны правильно без спецификации, что приведет к неудачной компиляции.
источник
Недавно я нашел этот крошечный инструмент командной строки, который добавляет или удаляет спецификацию для произвольных файлов в кодировке UTF-8: UTF BOM Utils ( новая ссылка на github)
Небольшой недостаток, вы можете скачать только простой исходный код C ++. Вы должны создать make-файл (например, с CMake ) и скомпилировать его самостоятельно, двоичные файлы на этой странице не предоставляются. Однако для разработчика программного обеспечения это не должно быть проблемой.
источник
Даже с решением Dave81 сообщество Visual Studio 2015 по-прежнему возвращало мой файл в UTF8-BOM каждый раз, когда я сохранял этот HTML-файл.
Когда я создал этот HTML-файл, я щелкнул правой кнопкой мыши по проекту и выбрал «Добавить», а затем добавил HTML-файл.
По умолчанию Visual Studio будет включать
<meta charset="utf-8" />
тег в ваш HTML-файл.Простое удаление тега и применение решения Dave81 на этот раз решило проблему.
Кажется, что Visual Studio анализирует ваш HTML-файл и, когда он видит этот тег, он преобразует файл в UTF8-BOM без какого-либо рассмотрения в исходный формат файла (UTF-8 без BOM).
Я бы сделал комментарий прямо под решением Dave81, но у меня не было достаточно очков, чтобы сделать это ...
источник
Для кода Visual Studio сделайте следующее:
источник
Этот код создаст файл в UTF-8 без спецификации
источник