У меня есть ситуация, когда у меня есть Java-программа, которая сначала пишет текстовый файл, а затем вызывает «CMD /C CLIP <textfile», чтобы иметь возможность поместить произвольно большой файл в буфер обмена Windows. Работает хорошо.
Теперь я обнаружил, что существует проблема с кодировкой, поэтому я убедился, что у меня есть действительный файл в кодировке UTF-8 (включая BOM, и он корректно открывается в vim), но кажется, что CLIP.EXE не соблюдает спецификацию для изменения ожидаемое кодирование в UTF-8.
Итак, как мне сообщить Windows и / или CLIP.EXE, что этот файл имеет кодировку UTF-8, и обращаться с ним соответствующим образом? (Если бы другая кодировка, такая как UTF-16 или UTF-32 работала бы лучше для Unicode, я могу использовать это вместо этого).
Система, показывающая поведение, - это Windows 7, а кодовая страница по умолчанию в CMD.EXE - 850. Мне это нужно для работы в системах, которые я не контролирую.