以字节流读取文件时中文乱码解决
2016-07-21 18:44
417 查看
问题:
中文字符占2个字节,非中文占一个字节
例如:"abc中国"
当我们以读到'中'时,由于是字节流读取数据,这时候就会读到'中'的一半,此时就会产生乱码。
test.txt文件内容:
代码:
解决方法:
当我们从文件中读取一个字节的时候,判断这个字节是否是中文的(判断这个字符是否是标准ASCII表中的,如果不是,则当前读取的字节为中文,则继续读取下一个字节,因为中文占两个字节)。
代码:
![](http://img.blog.csdn.net/20160721191042526?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
中文字符占2个字节,非中文占一个字节
例如:"abc中国"
当我们以读到'中'时,由于是字节流读取数据,这时候就会读到'中'的一半,此时就会产生乱码。
test.txt文件内容:
abc中国d |
|
解决方法:
当我们从文件中读取一个字节的时候,判断这个字节是否是中文的(判断这个字符是否是标准ASCII表中的,如果不是,则当前读取的字节为中文,则继续读取下一个字节,因为中文占两个字节)。
代码:
|
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树