JavaFX PasswordField echo char отличается на другом компьютере - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь запустить javafx Демо поля пароля на моем рабочем столе

окружение:

win7 64   cmd->chcp:GBK
java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

jdk version переключиться на "1.8.0_191"и" 1.8.0_131 ", тот же результат.

Затем я попытался запустить демонстрацию на рабочем столе моего коллеги

win7 64   cmd->chcp:UTF-8
java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Но на моем ноутбуке

win8 64   cmd->chcp:GBK
java -version
java version "1.8.0_191"/"1.8.0_161"/"1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Это показываетобычно с BULLET

1 Ответ

0 голосов
/ 19 ноября 2018

Самая первая строка в вашей версии печатает, что проблема ясна: cmd->chcp:GBK против cmd->chcp:UTF-8

На ноутбуке и настольном ПК установлена ​​кодировка символов GBK (cmd->chcp:GBK) но компьютер вашего коллеги использует UTF-8 (cmd->chcp:UTF-8).Поскольку ваш код, следовательно, также, вероятно, написан с использованием кодировки GBK, компьютер вашего коллеги пытается интерпретировать символ в UTF-8, но символьное пространство UTF-8 не содержит символ маркера (если он вообще есть).

Я бы посоветовал вам преобразовать свой код в Unicode и использовать \u2022 (который является кодировкой Unicode для маркера) в качестве символа, а не добавлять его, набирая его или устанавливая его жестко закодированным любым другим способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...