Считываю файлы следующим образом:
Files.lines(Paths.get(path), Charset.forName("UTF-8")).reduce("", String::concat)
Изначально была ошибка:
java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /path/?????? ? ???.txt
Сделал следующее:
path = URLDecoder.decode(path, "UTF-8")
Ошибка немного изменилась:
java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /path/имя файла.txt
Много копался в гугле, задавал уже один вопрос, но удалил его из-за плохой формулировки.
Пришёл к следующему: параметры file.encoding
и sun.jnu.encoding
имеют значение ANSI_X3.4-1968
.
Изменять их с помощью System.setProperty()
, устанавливать переменные среды JAVA_TOOL_OPTIONS
, JAVA_OPTS
, NXF_OPTS
, JVM_SUPPORT_RECOMMENDED_ARGS
, CATALINA_OPTS
и так далее. Ничего не помогает. Если изменить имя файла на английское - ошибок никаких нет.
Как изменить эти системные параметры? Локали тоже установлены:
[root@rop web]# locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC=ru_RU.UTF-8
LC_TIME=ru_RU.UTF-8
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY=ru_RU.UTF-8
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER=ru_RU.UTF-8
LC_NAME=ru_RU.UTF-8
LC_ADDRESS=ru_RU.UTF-8
LC_TELEPHONE=ru_RU.UTF-8
LC_MEASUREMENT=ru_RU.UTF-8
LC_IDENTIFICATION=ru_RU.UTF-8
LC_ALL=ru_RU.UTF-8
Сделал, чтобы прямо перед чтением файла вызывался метод System.setProperty(), затем getProperty(), параметры меняются, но ошибка остаётся.
tomcat 9, URIEncoding="UTF-8"
в host server.xml установлено.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Create a container that encapsulates an array of String, and that only adds Strings and gets Strings, so that there are no casting issues during useIf the internal array isn’t big enough for the next add, your container should automatically resize it
Всем приветИскал аналог JOptionPane для JavaFX
У меня задача в каждый момент времени направлять скорость движения объекта по заданному углу