用FileReader和FileWriter处理中文时的问题

用FileReader和FileWriter处理中文时,txt文件里和控制台显示的全是乱码,用FileInputStream和FileOutputStream读写中文文件... 用FileReader和FileWriter处理中文时,txt文件里和控制台显示的全是乱码,用FileInputStream和FileOutputStream读写中文文件在txt文件里就没问题 但是在控制台输出还是乱码求高手解释
新建了一个txt文件,里面有中文

用FileReader和FileWriter读取该文件并写入另一个文件时,新txt文件里和控制台显示的中文部分的全是乱码,用FileInputStream和FileOutputStream读写中文文件在新txt文件里就没问题 但是在控制台输出还是乱码求高手解释
展开
 我来答
jg...7@163.com
2011-06-23 · TA获得超过287个赞
知道小有建树答主
回答量:149
采纳率:0%
帮助的人:191万
展开全部
java的输入输出流都是可以设置编码的,在读取包含汉字的文本时,你可以将输入流的编码设置为GBK格式。你可以尝试以下方式读取文本,希望对你有帮助。
FileInputStream fis = null ;
try {
fis = new FileInputStream("文件路径名"); //创建文件输入流
InputStreamReader isr = new InputStreamReader(fis,"GBK"); //指定读取流为GBK编码格式
BufferedReader br = new BufferedReader(isr); //创建字符缓存输入流
String str ="";
while((str=br.readLine()) != null){
System.out.println(str); //读取每行文本
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(fis != null){
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
威孚半导体技术
2024-08-19 广告
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层... 点击进入详情页
本回答由威孚半导体技术提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式