阿拉伯语RSS can';不能用java阅读它给了我符号
我正在尝试从java中的阿拉伯语RSS can';不能用java阅读它给了我符号,java,rss,Java,Rss,我正在尝试从java中的URL读取RSS提要,但我没有得到阿拉伯语输出,只是一堆符号,下面是一个示例代码,它可以用英语,但不能用阿拉伯语。。。 我尝试了两个来自web的示例,但都无法解决它 public static void main(String[] args) { try { URL cali = new URL( "http://services.explorecalifornia.org/rss/tour
URL
读取RSS
提要,但我没有得到阿拉伯语输出,只是一堆符号,下面是一个示例代码,它可以用英语,但不能用阿拉伯语。。。
我尝试了两个来自web的示例,但都无法解决它
public static void main(String[] args) {
try {
URL cali = new URL(
"http://services.explorecalifornia.org/rss/tours.php");
URL aljazera = new URL(
"http://www.aljazeera.net/aljazeerarss/3c66e3fb-a5e0-4790-91be-ddb05ec17198/4e9f594a-03af-4696-ab98-880c58cd6718");
InputStream stream = aljazera.openStream();
BufferedInputStream buf = new BufferedInputStream(stream);
StringBuilder sb = new StringBuilder();
while (true) {
int data = buf.read();
if (data == -1) {
break;
} else {
sb.append((char) data);
}
}
System.out.println(sb);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
尝试指定
输入流的编码类型
:
InputStreamReader isr = new InputStreamReader(stream, "UTF-8");
StringBuilder sb = new StringBuilder();
while (true)
{
int data = isr.read();
if (data == -1) {
break;
} else {
sb.append((char) data);
}
}
你的机器上安装了阿拉伯语语言包吗?是的,我可以用其他程序写。。。比如microsfot单词等等。。。我在eclipse中运行这个。。。当我一个人做系统输出和静态阿拉伯语文本,它的作品很好。。。但是,当阅读此URL不起作用时。。。事实上,任何RTL都不起作用,我试过使用其他RTL语言。您可能需要将字符串编码转换为UTF-8。感谢您的解决方案也起作用,而且我还发现了另一种工作正常的解决方案。。。感谢您的时间:BufferedReader stream=new BufferedReader(new InputStreamReader(myblog.openStream(),“UTF-8”);