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

Вид: 48991|Ответ: 3

[Источник] .NET/C# для определения, включен ли тег BOM

[Скопировать ссылку]
Опубликовано 16.07.2021 13:22:54 | | | |
Что такое BOM?

Метка порядка байтов (BOM), или метка порядка байтов, — это специальная метка, вставляемая в файл Юникода, закодированный с помощью UTF-8, UTF16 или UTF-32, чтобы определить тип кодировки файла Юникода. Для UTF-8 BOM не требуется, так как он используется для обозначения типа кодирования и порядка байтов (big-endian или little-endian) многобайтового закодированного файла. В UTF-8 количество бит, закодированных для каждого символа, выражается первым байтом, и нет различия между big-endian и little-endian.
UTF-8 не требует BOM, хотя стандарт Unicode позволяет использовать BOM в UTF-8. Поэтому UTF-8 без BOM — это стандартная форма, и в основном привычка Microsoft размещать BOM в файле UTF-8 (кстати: Microsoft также привычка называть UTF-16 с BOM «Unicode» без подробностей).
BOM готовятся для UTF-16 и UTF-32 для обозначения порядка байтов. Microsoft использует BOM в UTF-8, потому что он позволяет чётко различать кодировку UTF-8 и ASCII, иначе открытие CSV-файла в Excel может быть искажено. Но такой файл может вызывать проблемы в операционных системах, отличных от Windows.
Разница между «UTF-8» и «UTF-8 с BOM» заключается в том, существует ли BOM или нет. То есть, есть ли U+FEFF в начале файла.
Веб-код UTF-8 не должен использовать BOM, иначе ошибки случаются часто. При выводе CSV-файла из http-ответа он по умолчанию не включается при установке utf8
BOM, но Windows Excel использует BOM для подтверждения кодировки UTF8, и всем нужно записывать BOM в начало файла.



Когда вы впервые разрабатываете генератор кода на Java, вы будете размещать файл напрямуюЗапишите в файл UTF-8, содержащий тег BOMЭто приведёт к ошибкам упаковки, а именно так:

Нелегальные иероглифы: '\ufeff'


Как использовать .NET / C#, чтобы определить, содержит ли файл теги BOM? , код следующий:





Коллеги, прикрепленныеПреобразует формат BOM UTF-8 в формат UTF-8 (без тегов BOM), полный код выглядит следующим образом:

(Конец)

Счёт

Количество участников1МБ+1 способствовать+1 Коллапс причина
Мо Фэн 123 + 1 + 1 Очень мощно!

Смотреть все рейтинги





Предыдущий:SQL SERVER удаляет функцию удаления разделов и схему разделов
Следующий:Площадь каждой таблицы в базе данных SQL Server
Опубликовано 16.07.2021 22:41:40 |
 Хозяин| Опубликовано 01.11.2024 15:00:47 |
UTF-8 удаляет метку BOM

 Хозяин| Опубликовано 25.06.2025 16:13:03 |
UTF-8 не записывает в BOM
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com