首先讓我開始說我知道我不是唯一一個遇到過這個問題的人,我花了最近幾個小時研究如何解決這個問題。可悲的是,我無法讓我的掃描儀工作。我是新來的java所以我不明白更復雜的解釋,一些答案在不同的問題。掃描儀遇到不同轉義字符時的困難
這裏是破敗: 我想讀出一個包含卡片轉義字符的文件。下面是一個簡短的版本:(編號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編碼進行保存!它現在有效。 –