Загрузка файла Некоторые байты были заменены символом замещения Unicode при загрузке файла

Я неожиданно отлаживался в исходном коде .NET. Когда я вступил в свой файл, visual studio 2010 поднял эту ошибку:

Загрузка файла:
 Некоторые байты были заменены символом замещения Unicode при загрузке файла XXX. Сохранение файла не сохранит исходное содержимое файла.

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

И почему сейчас, не в первый раз, когда визуальная студия загружала файл с сервера Symbol?

Ответ 1

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

upd: На самом деле кажется, что не помогает... Ищете другое решение

upd2: действительно помогает резервное копирование файла, но вы должны отключить эту опцию:

Отладка\Общие\Требовать, чтобы исходные файлы соответствовали исходной версии

Ответ 2

Я исправил эту проблему, изменив настройку "Язык для программ, не поддерживающих Юникод" на "Английский (США)". Если вы используете Windows 10, вы можете найти его в "Панель управления → Часы, Язык и Регион → Регион → Административный".

Screenshot of the Region Settings dialog in Windows

Ответ 3

Я встретил ту же проблему. похоже, vs2010 пытается прочитать исходный файл, используя неправильную кодировку. Я открываю файл с помощью editpad и преобразую его в utf-8, и он становится нормально.

Ответ 4

Я начал получать эту ошибку после включения (в целях тестирования) нового параметра "Бета-версия: используйте Unicode UTF-8 для поддержки языков во всем мире" в недавнем обновлении Windows 10 Spring 2018.

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

Ответ 5

ну я использовал notepad ++ и редактировал каждый файл в проекте в конце каждого файла есть строка NullNullNullNull, удалите его и нажмите ctrl + S, сделайте это ко всем файлам, это поможет мне знать, что это помогло мне

Ответ 6

Я использую файл шаблона SVN *.tmpl для номеров версий и содержит (c) символ авторского права. VS 2010 жалуется на это, когда он генерирует файл AssemblyInfo.cs из файла AssemblyInfo.tmpl.

Поэтому я заменил символ авторского права на "(c)", и сообщение об ошибке исчезло.

Ответ 7

Что сработало для меня, так это то, что я обнаружил страницу с сообщением об ошибке: "Некоторые байты были заменены символом замены Unicode при загрузке файла _PartialLogin.cshtml. Сохранение файла не сохранит исходное содержимое файла".

Я открыл _PartialLogin.cshtml в редакторе, отличном от VS 2017 (я использовал Notepad++), нажмите> Кодировка <в строке меню, затем выберите> Кодировать в UTF-8 <и сохраните файл. Это сделано.

Ответ 8

Если вы используете Windows 10, вы можете найти его в "Панель управления → Часы, Язык и Регион → Регион → Административный"

в новых версиях появится поле "check", в последнем из которых написано "beta:...." убрать из него check