JAVA读写文件指定字符集

 

JAVA读取和写入文件时如果不指定字符集,那么都是采用操作系统默认的字符集.当我们在Windows平台上创建一个文件包含有中文,然后在Linux 平台下用JAVA读出来,那么很有可能会出现乱码.这是因为:在Windows中文版平台下,系统的默认字符集为GB18030,而且Linux的则为 UTF-8.如果我们不使用其它工具,一般来说,一个文件是用什么字符集写的,那么应该用同样的字符集才能不出错地读出来,当然字符集兼容的情况例外(跟乱码无关,不讨论).扯了这么多,无非就是想说读取文件和书写文件时都可以指定字符集可以解决乱码.

读文件:

InputStreamReader isr = new InputStreamReader(new FileInputStream( filePath), charsetName);

写文件:

OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream( filePath),charsetName);

但是,很多情况下,文件可能是由其它工具导出的,我们并不知道文件的字符集是什么.尤其出现在WEB导入导出中,经常是客户端是Windows,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值