我正在使用eclipse构建服务器应用程序,客户端是android应用程序
当我只使用Java应用程序时,我可以从mysql中读取阿拉伯语字符并且可以正确打印到eclipse,但在服务器应用程序上我不能,结果是像这样的问号`?????`
我试图在eclipse上打印结果而不是在android
上我的数据库连接是:
String unicode = "?useUnicode=yes&characterEncoding=UTF-8";
Class.forName("com.mysql.jdbc.Driver");
con = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost:3306/ams-competation" + unicode,
username, password);
不关心android,我问如何在eclipse服务器应用程序上阅读和打印阿拉伯语字符
修改
似乎我的问题来自日食,而不是来自连接,因为当我尝试这个System.out.println("روما");
时,我得到了问号
当我试图用这些陈述检查问号时
if(q.getFirstChoice().equals("بيرلو"))
System.out.println("dddd");
结果是dddd
,所以我可以从mysql中正确读取它,但是我打印结果的问题
答案 0 :(得分:1)
问题是system.out
不支持UtF-8
字符,因此您应该使用以下代码
PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
out.println(“some-utf8-string”);
您还可以看到reference。
被修改:
其他解决方法是