Java 使用System.out.println显示特殊字符
我无法将带有特殊字符的文本从Web服务发送或显示到数据库。在eclipse上,我已经将字符编码设置为UTF-8,但它仍然不允许我显示字符。例如,一个简单的打印,如下面的代码Java 使用System.out.println显示特殊字符,java,database,string,character-encoding,system.printing,Java,Database,String,Character Encoding,System.printing,我无法将带有特殊字符的文本从Web服务发送或显示到数据库。在eclipse上,我已经将字符编码设置为UTF-8,但它仍然不允许我显示字符。例如,一个简单的打印,如下面的代码 String test ="привет"; System.out.println(test); 或 控制台上的结果,如果我将其发送到我的数据库,则为??????。如何使其在控制台上正确显示,并希望在数据库中正确显示,查看是否有效 PrintStream out = new PrintStream(System.
String test ="привет";
System.out.println(test);
或
控制台上的结果,如果我将其发送到我的数据库,则为??????。如何使其在控制台上正确显示,并希望在数据库中正确显示,查看是否有效
PrintStream out = new PrintStream(System.out, true, "UTF-8");
out.println(test);
为了存储在DB中,请使用以下命令以UTF-8显式编码字符串
String newString = new String(test.getBytes(), "UTF8");
是的,是二十一世纪。上个世纪,我们仍在为字符编码之类的事情而挣扎 我的第一个猜测是:
可能您需要先将字符串解码为ISO-8859,然后将其编码为UTF-8,如果您使用的是Eclipse,那么
否,我得到了相同的字符您必须将字符串编码为“iso-8859-1”例如:新字符串(test.getBytes(),“iso-8859-1”);我已将表编码设置为utf8,但结果仍然相同。就编码而言,我可以在android中编程时显示特殊字符。这是eclipse控制台还是sh/cmd?您的控制台设置为什么字符集?eclipse,如果控制台字符集是指Windows>首选项>工作区中的设置,则它设置为UTF-8。是否有其他方法单独设置控制台?如果可能,您应该将其添加为注释而不是答案。
String newString = new String(test.getBytes(), "UTF8");