Прежде всего позвольте мне начать с того, что я знаю, что я не единственный, кто испытал эту проблему, и я провел последние пару часов, чтобы исследовать, как исправить это. К сожалению, я не могу заставить свой сканер работать. Я новичок в java, поэтому я не понимаю более сложных объяснений, которые некоторые ответы имеют в разных вопросах.Сложность сканера с различными escape-символами
Ниже приведено краткое описание: Я пытаюсь прочитать из файла, который содержит escape-символы карт. Вот короткая версия: (Числа 2 и 3 из 4 различных граней карты)
\u26602,2
\u26652,2
\u26662,2
\u26632,2
\u26603,3
\u26653,3
\u26663,3
\u26633,3
Это формат: (костюм) (лицо), (значение). пример:
- \ u2663 = костюм
- 3 = лицо
- 3 = значение
Это код, я использую для прочтения:
File file = new File("Cards.txt");
try {
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
String[] temp = line.split(",");
cards.add(new Card(temp[0], Integer.parseInt(temp[1])));
}
scanner.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
на картах ArrayList должно быть 52 карты после этого, содержащие имя (костюм и лицо) и значение. Когда я пытаюсь напечатать имя это выход:
\u26633
Хотя это должно быть:
♣3
Может кто-нибудь дать мне указатели к решению? Мне действительно нужна эта проблема. Я не хочу, чтобы ты написал мне мой код.
Заранее спасибо
Большое спасибо, я никогда не думал о том, чтобы просто положить персонажа в текстовый файл и сохранить его с кодировкой UTF-8! Он работает сейчас. –