私はSystem.out PrintStreamをJTextPaneにリダイレクトしようとしています。特別なロケール文字のエンコーディングを除いて、これはうまくいきます。私はそれについて多くの文書を見つけました(例mindprod encoding page参照)が、私はまだそれと戦っています。同様の質問がStackOverFlowに掲載されましたが、私が見た限りエンコーディングは扱われていませんでした。すべてのコンソール出力を正しいエンコーディングでSwing JTextArea/JTextPaneにリダイレクトする方法はありますか?
まず解決策:
String sUtf = new String(s.getBytes("cp1252"),"UTF-8");
第2の解決策は、java.nioで使用する必要があります。私はCharsetの使い方を理解していません。
Charset defaultCharset = Charset.defaultCharset() ;
byte[] b = s.getBytes();
Charset cs = Charset.forName("UTF-8");
ByteBuffer bb = ByteBuffer.wrap(b);
CharBuffer cb = cs.decode(bb);
String stringUtf = cb.toString();
myTextPane.text = stringUtf
どちらの解決策もありません。何か案が?事前に
おかげで、Javaで jgran
:なぜ二人のユーザ - jgran(OP)とjgran(回答します。http://stackoverflow.com/questions/1522444/how-to-redirect-すべてのコンソール出力 - スイング - jtextarea-jtextpane-the-right/1530213#1530213) – akf
私の間違いは... FAQをもっと真剣に考えなければなりません。だから同じユーザー! –