16 進値を使用して拡張 ASCII 文字 (IBMコード ページ 437の文字に似ている) を表す印刷形式ページがあります。この表を参考にしています。私はフォーマットページについて何も言えないので、これを変更することはできません.
この印刷形式ページは、私の Android アプリケーションで使用され、プリンターに送信されたときに関連データを適切な場所に配置します。最終結果は請求書のようになります。
Java での特定の ASCII 文字の表現に問題があります。たとえば、上の表の文字 201、205、および 187 です。この順序で組み合わせると、データ テーブルの素敵な境界線になります。
Java では、次のように 16 進数から ASCII に変換しようとしています。
String hex = "D5"; //this is just for example
int n = Integer.parseInt(hex, 16); //this should return a value of 213
char c = (char)n;
「c」は、私が意図したものではない奇抜な文字になってしまいます。JavaがWindows-1252/CP-1252標準を使用しているためだと今では気づきました。
解決策は、2 桁の 16 進数値を対応する Unicode 値に変換することだと思いますが、その方法がわかりません。どんな助けでも大歓迎です。