我的 java 程序从 API 获取一些天气信息。但它在文本中有奇怪的字母。看起来像 ASCII 码。
这是一个示例:最低温度:0°C(32°F)应该是:最低温度:0C(32F)(我认为)。
我怎样才能改变它?
我的 java 程序从 API 获取一些天气信息。但它在文本中有奇怪的字母。看起来像 ASCII 码。
这是一个示例:最低温度:0°C(32°F)应该是:最低温度:0C(32F)(我认为)。
我怎样才能改变它?
那么一个解决方案可以是在发布之前你可以做以下
String withoutDegSymbol = str.replaceAll("°", "");
其中 str 包含您的温度数据。
尝试这个
String s = "0°C (32°F)".replaceAll("[\u0080-\u00FF]", "");
或者如果您的文本中有 HTML 字符引用,请使用
String s = "Min temp: 0°C (32°F)".replaceAll("&#x.+?;", "");
如果在您的代码中使用 ASCII 字符编码,当您保存代码时,您的 IDE 是否询问您要以什么格式保存它。因为在 Eclipse IDE 中,如果您使用的是 ASCII 字符,它会提示您将代码保存为 UTF-8 格式。希望这可以帮助。
你需要知道:
°
:
因此,如果这是您遇到的唯一问题(我的意思是这是您使用“学位符号”的唯一字符),那么您可以手动转换它:
String s = "Min temp: 0°C (32°F)".replaceAll("°", "°");
System.out.println(s);
如果这不是您拥有的特殊字符,那么您可以使用:StringEscapeUtils 类 或jsoup 库将其转换为 java