3
4

1 回答 1

0

好吧,为了在标准输出中打印,请更改 netbeans 的编码设置或显式创建 UTF-8 流。

第1部分:

第一部分取自这里的答案

import java.io.PrintStream;
import java.io.UnsupportedEncodingException;

public class JavaTest {

    public static void main(String[] args) {
        try{
            PrintStream out = new PrintStream(System.out, true, "UTF-8");
            String Kana = "こんにちは";
            out.println(kana);

        }
        catch(Exception e){
            e.printStackTrace();
        }
    }
}

第2 部分:好吧,为了在JLabel调用中显示JLabel#setFont传递所需字体名称的方法,该方法在您的系统上可用于日语。有关更多信息,请参阅javadocsFont

例子:

 JLabel jl=new JLabel();
 jl.setFont(new Font(yourFontString,20,20));
 jl.setText(Kana);

编辑:如果您遇到问题Scanner

利用public Scanner(InputStream source,String charsetName)

例子:Scanner scan=new Scanner(System.in,"UTF-8");

编辑:

当我打开我写汉字的文件时,它通过显示一堆问号来做同样的事情。问号的数量加起来就是字符的数量,但如果我使用扫描仪或任何其他方法从用户那里获取文本,它们就不会显示。

你正在包裹FileOutputStreamPrintWriter您可以不这样做,而是将其包装在 a 中OutputStreamWriter,因为它提供了一种通过其构造函数配置编码的方法。您已经使用类似的方法来编写您的word对象。

Ex:



    File newfile = new File ("kanji.rtf");
    FileOutputStream ofs = new FileOutputStream(newfile);
    OutputStreamWriter print = new OutputStreamWriter(ofs,YOURCHARSET);

读取文件时,使用or类kanji.rtf反向执行相同的操作,并使用您用于写入文件的相同字符集。InputStreamScanner

于 2013-06-04T20:59:18.873 回答