Java RTFReader字符集问题
我有一个RTF文件,其中包含转义字符Java RTFReader字符集问题,java,character-encoding,Java,Character Encoding,我有一个RTF文件,其中包含转义字符\'80,它应该是我的字符集中的欧元符号(使用\ansicpg1252设置代码页)。下面是一个简单的示例代码: String rtfWithEuro = "{\\rtf1\\ansi\\ansicpg1252\\deff0 {\\fonttbl {\\f0 Times New Roman;}}\r\n" + "\\f0\\fs24 Hello, this is a Euro sign \\'80"
\'80
,它应该是我的字符集中的欧元符号(使用\ansicpg1252
设置代码页)。下面是一个简单的示例代码:
String rtfWithEuro = "{\\rtf1\\ansi\\ansicpg1252\\deff0 {\\fonttbl {\\f0 Times New Roman;}}\r\n"
+ "\\f0\\fs24 Hello, this is a Euro sign \\'80"
+ "\r\n}";
JTextPane tp = new JTextPane();
tp.setContentType("text/rtf");
tp.setText(rtfWithEuro);
String result = tp.getDocument().getText(0, tp.getDocument().getLength());
结果应该是Hello这是一个欧元符号€
,但是Hello这是一个欧元符号
。西里尔字母在代码页1251中有转义码\'80
,因此看起来java忽略了代码页
有没有办法告诉JTextPane
使用哪个代码页?可能是相关错误可能是相关错误