问问题
3148 次
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
传递所需字体名称的方法,该方法在您的系统上可用于日语。有关更多信息,请参阅javadocs
类Font
。
例子:
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");
编辑:
当我打开我写汉字的文件时,它通过显示一堆问号来做同样的事情。问号的数量加起来就是字符的数量,但如果我使用扫描仪或任何其他方法从用户那里获取文本,它们就不会显示。
你正在包裹FileOutputStream
。PrintWriter
您可以不这样做,而是将其包装在 a 中OutputStreamWriter
,因为它提供了一种通过其构造函数配置编码的方法。您已经使用类似的方法来编写您的word
对象。
Ex:
File newfile = new File ("kanji.rtf");
FileOutputStream ofs = new FileOutputStream(newfile);
OutputStreamWriter print = new OutputStreamWriter(ofs,YOURCHARSET);
读取文件时,使用or类kanji.rtf
反向执行相同的操作,并使用您用于写入文件的相同字符集。InputStream
Scanner
于 2013-06-04T20:59:18.873 回答