i code some plugins (java) для bukkit (minecraft), но у меня есть некоторые проблемы, такие как «неприемлемый символ» ï¿½ '(0xFFFD) », когда сервер пытается прочитать конфигурационные файлы, в Windows работает отлично, в linux нет ... мне нужно использовать ANSI, потому что я и некоторые пользователи нуждаются в специальных символах, но даже не добавляя их в конфиг при попытке запустить его на linux i взять это. Я пытался кодировать ANSI, но я получаю ту же ошибку. Есть идеи? благодаря!Eclipse кодирует проект в ANSI, потому что странные символы не могут быть прочитаны в linux
0
A
ответ
0
для Windows и Linux содержит два различных типа кодирования по умолчанию для окон это UTF16 и для Linux это UTF8 так может создавать проблемы при чтении или создает Junck символов
при чтении или записи файла передать формат UTF в какой файл для чтения/записи
, например
writeData(String Data,UTFfromate);
WriteData("Test","UTF-8");
readData(String Data,UTFfromate);
readData("Test","UTF-8");
+0
Проблема в том, что это плагин, плагин bukkit, мой код не загружает файлы, bukkit yaml parser делает и вызывает его Linux, он получает эту ошибку, я не знаю, как закодировать файлы, чтобы избежать этого. , –
Похоже, вы уже кодировании в ANSI, и вам просто нужно читать их в на стороне Java, как ANSI (Windows-1252) в виде Что ж. – Perception
ANSI - стандартная Java-кодировка в системах Windows. UTF-8 является кодировкой по умолчанию для (многих) систем Linux. Перекодируйте файлы из любой кодировки ANSI, которую вы используете в UTF-8, или найдите способ передать правильную кодировку файла в инструмент построения. – McDowell
Пробовал в utf-8, но получал ту же ошибку, я закодировал файлы в ISO-8859-1, и я не получаю ошибок, но если я попытаюсь добавить какой-либо специальный символ как «áéíñ .. и т. Д.», Я получаю ошибки обратно :/ –