我用fileWriter和bufferedwriter写入文件,为什么写进去就是乱码呢?
当我写入东西小的时候,显示正常!当写入东西多了就会显示乱码!bufferedwriter也flush()了啊!...
当我写入东西小的时候,显示正常!当写入东西多了就会显示乱码!
bufferedwriter也flush()了啊! 展开
bufferedwriter也flush()了啊! 展开
1个回答
展开全部
使用字节流OutputStream可以直接输出,现在要是用到字符流处理的话,也当年困扰到我,现在将分析码写下来共参考:
//FileReader fr = new FileReader("d:/d.txt");
//BufferedReader br = new BufferedReader(fr);
以上注释是常规写法,处理英文好使,处理中文就改为以下写法
FileInputStream fr = new FileInputStream(new File("d:/d.txt"));
InputStreamReader brs = new InputStreamReader(fr,"GBK");
BufferedReader br = new BufferedReader(brs); 把filewriter的写法写成FileinputStream形式,在GBK即可。
//FileReader fr = new FileReader("d:/d.txt");
//BufferedReader br = new BufferedReader(fr);
以上注释是常规写法,处理英文好使,处理中文就改为以下写法
FileInputStream fr = new FileInputStream(new File("d:/d.txt"));
InputStreamReader brs = new InputStreamReader(fr,"GBK");
BufferedReader br = new BufferedReader(brs); 把filewriter的写法写成FileinputStream形式,在GBK即可。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询