Groovy скрипт не записывает файл как UTF-8 - PullRequest
2 голосов
/ 07 декабря 2011

У меня есть следующий фрагмент кода:

def f = new File("test.txt")
f.write("test", "UTF-8")

При открытии файла в Notepad ++ (или любом другом редакторе) он все еще находится в ISO-8859-1 вместо UTF-8. Открытие файла в шестнадцатеричном редакторе не содержит «магических байтов» 0xEFBBBF.

С уважением,
Роберт

1 Ответ

4 голосов
/ 07 декабря 2011

Файлы UTF-8 на самом деле не требуют индикатора метки порядка байтов .

Например, если ваш файл UTF-8 содержит только символы ASCII, утилита fileверните это:

$ file [filename]
ASCII text

Но когда вы введете, скажем, японские символы в этот файл, то file вернет это:

UTF-8 Unicode text

.. но файл не начнетсяс спецификацией.

...