注册 登录
编程论坛 JAVA论坛

关于IO,编码,解码,unicode

小牛 发布于 2015-07-07 14:53, 466 次点击
在听课时,说解码与编码一至才不出现乱码。而java的内部字符又以unicode的存储的。

   那比如我在txt中,有一句话:我的名字叫小牛 这个文本文件是以gbk存储的。我把这个字符串,读入到程序中 赋给String str="我的名字叫小牛"
这里的Str中的字符是以unicode存储的, 这时调用 byte[] b=str.getBytes("utf-8"),得到字节数组b.
再用FileOutsteam(b),输出到另一个文本文件中,文本文件设置"utf-8",这样的话,也不会得到乱码.

  不知道这样想的对不对.
1 回复
#2
日知己所无2015-07-11 23:15
已经存在的文本文件,就已经有唯一的编码,只有使用与之匹配的编码读取文件才不会乱码

读取到内存后,再往别的文件里面写的时候,用什么编码都可以;之后再用程序或者文本编辑器打开时,只要使用与之匹配的编码就不会乱码
1