我有一個便宜的磁卡閱讀器,就像一個鍵盤。我連接它並刷卡,並將所有卡數據輸入到計算機中。但由於某種原因,它在Java中不起作用。它可以在我嘗試過的所有非Java的環境中工作。Java卡閱讀器出現亂碼
什麼是卡上(實際上在刷卡SO編輯卡):
;00548757802?
當使用Java:
;0◘)P87┼7\02?
_005487578D♥
;005487G802?
_005*J657802{
♣00548I5♣802?
;≥T548757♠╢·?
≥T54875I↑:?
正如你所看到的,它的每一次不同了。然而,讀者在數據之後發送了一個換行符,Java看起來可以識別。
我讀輸入代碼:
// Bound to a JTextField
public void keyTyped(KeyEvent e) {
System.out.print(e.getKeyChar());
}
JTextField中還顯示亂碼的文字。
這裏有什麼問題,我該如何解決?
沒有任何代碼,只是文本框,它仍然搞砸了。這個問題也在Ubuntu中隨處可見,幾乎所有的應用程序,Java或其他。 – 2014-10-23 21:21:25
您可能會檢查'file.encoding'系統屬性。 – trashgod 2014-10-24 10:22:37
所有的Java程序都這樣做,而不僅僅是我的。 – 2014-12-07 07:38:37