UTF-8 без спецификации

У меня есть файлы javascript, которые мне нужны для их сохранения в UTF-8 (без спецификации), каждый раз, когда я конвертирую их в правильный формат в Notepad ++ , они возвращаются обратно в UTF-8 с BOM, когда я их открываю в Visual Studio. Как я могу остановить VS2010 от этого?

Еще один вопрос: UTF-8 без подписи в Visual Studio так же, как UTF-8 без спецификации?

BOM или Byte Order Mark иногда довольно раздражает. Visual Studio не изменяет файл, если вы его не сохраните (как сказал Ханс).

И вот решение вашей проблемы: если вы хотите сохранить файл с другими кодировками, выберите «Сохранить как» и добавьте кнопку «Сохранить» в диалоговом окне файла и выберите «Сохранить с кодировкой». Или, если вы хотите полностью избавиться от этой настройки, просто откройте меню «Файл» и выберите «Дополнительные параметры сохранения», и там вы должны выбрать «UTF-8 без подписи» (и это также ответило на ваш последний вопрос :). Да «UTF-8 без подписи» такой же, как без спецификации.

Я создал расширение Fix File Encoding, которое запрещает Visual Studio 2010+ добавлять BOM к файлам UTF-8.

Теперь с картинками.

  1. Перейдите в File -> Save As .

введите описание изображения здесь

  1. Затем по кнопке «Сохранить» нажмите треугольник и нажмите « Save with Encoding.. .

введите описание изображения здесь

  1. Нажмите ok, чтобы перезаписать файл, затем из списка кодировок найдите UTF-8 Without signature -> Нажмите « OK .

введите описание изображения здесь

Надеюсь, это сэкономит вам время.

К сожалению, это не работает с файлами csproj. Нет опции «Advanced save», и даже если вы установили ее в «UTF-8 без подписи» для файла cs, файлы csproj все еще сохраняются с помощью спецификации. Если вы используете VSS, он все еще жалуется на файлы проекта.

Для vs2010 c ++ будут проблемы с UTF8 без спецификации, когда исходные файлы содержат многобайтовые символы (например, китайский).

Эти символы не будут распознаны правильно без спецификации, и это приведет к неудачному сбору.

Недавно я нашел этот крошечный инструмент командной строки, который добавляет или удаляет спецификацию в архивных UTF-8 закодированных файлах: UTF BOM Utils

Небольшой недостаток, вы можете скачать только простой исходный код C ++. Вы должны создать make-файл (например, с CMake ) и скомпилировать его самостоятельно, двоичные файлы на этой странице не указаны. Однако для разработчика программного обеспечения это не должно быть проблемой.

Даже с решением Dave81 сообщество Visual Studio 2015 по-прежнему возвращало мой файл в UTF8-BOM каждый раз, когда я сохранил этот html-файл.

Когда я создал этот html-файл, я щелкнул правой кнопкой мыши по проекту и выбрал «Добавить», а затем добавил файл HTML.

По умолчанию Visual Studio будет включать тег в ваш HTML-файл.

Просто удалив тег, а затем применив решение Dave81, на этот раз проблема исчезла.

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

** Я бы сделал комментарий непосредственно под решением Dave81, но у меня не было достаточно очков, чтобы сделать это …

UTF-8 – «Сохранить как» (без подписи) По умолчанию – запрос на включение по умолчанию для UTF без подписи

VS 2017 изначально поддерживает EditorConfig, поэтому рекомендуемое решение – добавить файл .editorconfig в базу кода и установить charset => utf-8 . Затем, как только вы сохраните файл, он будет сохранен как UTF-8 без спецификации.

Interesting Posts

Угловой и UI-маршрутизатор, как установить динамический шаблонUrl

Конфигурирование Log4j Loggers Programmatically

сообщение об ошибке отказано

Использовать gpg2 в качестве замены gpg OSX

Может ли stream C # кэшировать значение и игнорировать изменения этого значения для других streamов?

Как обрабатывать как отдельный элемент, так и массив для одного и того же свойства с помощью JSON.net

Почему специальные символы, такие как «возврат каретки», представленный как «^ M»?

Параметры стиля, выделенные жирным шрифтом в Internet Explorer

динамическое распределение массива массивов в C

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

Почему производители процессоров перестали увеличивать тактовую частоту своих процессоров?

Wpa_supplicant для двойной WLAN

Выровнять линейный блок DIV вверху элемента контейнера

Имена компонентов ReactJS должны начинаться с заглавных букв?

Получите исходные файлы jar, прикрепленные к Eclipse для зависимых от Maven зависимостей

Давайте будем гением компьютера.