Java FileWriter无法编码utf-8 转换方法

来源:互联网 发布:淘宝如何做基础销量 编辑:程序博客网 时间:2024/06/15 11:47

原本想通过文件追加的方式,向.txt或者.json文件(其他也类似)结尾添加新的文本,开始通过FileWriter追加,但是中文追加后却成了乱码。

查了一圈下来结论是:Java FileWriter 默认是用(ISO-8859-1 or US-ASCII)西方编码的,而FileWriter类没有setEncoding的方法。希望通过设置编码方式的计划破灭了。


那么就换一种方法吧:

BufferedWriter writer = new BufferedWriter (new OutputStreamWriter (new FileOutputStream (filePath,true),"UTF-8"));

不需要改动原来的代码,只需要用上面的代码替换原来的

FileWriter writer = new FileWriter(filePath,true);


运行代码,打开文本文件,中文又回来了!!!

0 0