如何从JTextArea中删除Ascii代码?

时间:2013-03-31 06:54:32

标签: java character-encoding ascii jtextarea

我的java程序从API获取一些天气信息。但它在文中有奇怪的字母。看起来像ASCII码。

这是一个例子: 最低温度:0°C(32°F),应该是:最低温度:0C(32F)(我认为)。

如何更改?

4 个答案:

答案 0 :(得分:1)

一个解决方案可以在发布之前就可以执行以下操作

String withoutDegSymbol = str.replaceAll("°", "");

其中str包含温度数据。

答案 1 :(得分:1)

试试这个

    String s = "0°C (32°F)".replaceAll("[\u0080-\u00FF]", "");

或者如果您在文本中使用HTML字符引用

String s = "Min temp: 0°C (32°F)".replaceAll("&#x.+?;", "");

答案 2 :(得分:1)

如果在代码中使用ASCII字符编码,则在保存代码时,IDE会询问您要以何种格式保存代码。因为在Eclipse IDE中,如果使用ASCII字符,它会提示您以UTF-8格式保存代码。希望这会有所帮助。

答案 3 :(得分:1)

你需要知道:

°

  • 是'DEGREE SIGN'的Unicode字符
  • 编码: HTML实体(十六进制)

所以,如果这是你遇到的唯一问题(我的意思是这是你使用的唯一字符“Degree sign”),那么你可以手动转换它:

String s = "Min temp: 0°C (32°F)".replaceAll("°", "°");
System.out.println(s);

如果这不是您的特殊字符,那么您可以使用:Class StringEscapeUtilsjsoup library将其转换为java