如何在java中使用中文和日文字符作为字符串?

你好
我使用的是java语言。 在这里我必须使用一些中文,日文字符作为字符串并使用System.out.println()进行打印。

我怎样才能做到这一点?

谢谢

Java Strings支持Unicode,所以中文和日文都没问题。 但是,可能需要告知其他工具(例如文本编辑器)和操作系统shell。

在读取或打印Unicode数据时,您必须确保控制台或流也支持Unicode(否则它可能会被问号替换)。

Writer unicodeFileWriter = new OutputStreamWriter( new FileOutputStream("a.txt"), "UTF-8"); unicodeFileWriter.write("漢字"); 

您可以直接在Java源代码文件中嵌入Unicode文字,但是您需要告诉编译器该文件是UTF-8( javac -encoding UTF-8

 String x = "漢字"; 

如果你想狂野,你甚至可以在方法,变量或类名中使用中文字符。 但这是违反命名约定的,至少对于类名,我强烈反对它(因为它们需要映射到文件名,而Unicode可能会导致问题):

 結果 漢字 = new 物().処理(); 

只要使用它,Java Strings就完全是unicode,所以应该没什么好说的

 System.out.println("世界您好!"); 

有点过时,但它让我哇!

http://xahlee.org/java-a-day/unicode_in_java.html

这篇文章是关于变量命名的,你可以告诉它在你的源代码中直接写中文/日文字符串就足够了。

还有一件事需要记住,Reader应该是BufferedReader,我的意思是:

 BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (f), "UTF-8")); 

必须这样做,因为当你读取文件时,可以调用readLine():

 while (br.readLine() != null) { System.out.println (br.readLine()); } 

这个方法是我发现的唯一可以正常运行的方法,因为常规的Reader不包含非静态的readLine()void方法(这个方法不接受任何东西)。