Вопрос

Довольно прямо вперед вопрос. Есть ли способ настроить Eclipse для работы с текстовыми файлами, закодированными с помощью UTF-8, а без спецификации?

Пока что я использовал Eclipse с кодировкой UTF-8 и работает, но когда я пытаюсь редактировать файл, сгенерированный другим редактором, который включает в себя BOM, Eclipse не обрабатывает его правильно, он «показывает невидимый персонаж» на Начало из файла (BOM). Есть ли способ сделать Eclipse понять закодированные файлы UTF-8 с BOM?

Это было полезно?

Решение

Обе BUG 78455. («Предоставьте вариант, чтобы принудительно написать BOM для файлов UTF-8») и BUG 136854. Не оставляйте много надежды на такой вариант.

Поддержка кодирования в рабочем пространстве основана на том, что доступно от Java.
Для любого конкретного ресурса в рабочем пространстве можно получить кабриолетную строку, которая может использоваться с любыми apis java, которые принимают строки Charset.
Примеры:

  • 'US-ASCII',
  • 'UTF-8',
  • 'Cp1252',
  • 'UTF-16(Big Endian, BOM вставлен автоматически),
  • 'UTF-16BE(Big Endian, BOM не вставлен автоматически),
  • 'UTF-16LE'(Маленький Endian, BOM не вставлен автоматически).

Для кодировки Java, за исключением кодировки «UTF-16», Boms не вставляются (при записи) или отброшены (при чтении) бесплатно.
Даже если это озадачивается для конечных пользователей, это то, как работают все приложения Java.
Если приложения хотят поддерживать создание файлов UTF-8 с BAMS, чтобы соответствовать ожиданиям своих пользователей, они должны обеспечить такие возможности самостоятельно (Как ни Java, ни модель ресурсов не помогут с этим).
Eclipse обеспечивает некоторые улучшения для обнаружения Boms, но не с генерацией или пропуском их.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top