黑马程序员技术交流社区
标题:
文件输入流问题
[打印本页]
作者:
宗士为
时间:
2012-5-12 08:44
标题:
文件输入流问题
public class ReadChineseFile {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("笔记.txt"); //("笔记.txt") 为文本笔记
int b;
while ((b = fis.read()) != -1) {
byte b1 = (byte) b;
if (b1 < 0) {
byte b2 = (byte) fis.read();
byte[] arr = {b1, b2};
System.out.print(new String(arr));
//为什么要用new string()
} else {
System.out.print((char)b1);
}
}
fis.close();
}
}
作者:
李啸
时间:
2012-5-12 08:48
FileInputStream fis = new FileInputStream("笔记.txt"); //("笔记.txt") 为文本笔记
int b;
while ((b = fis.read()) != -1) {
byte b1 = (byte) b;
if (b1 < 0) {
byte b2 = (byte) fis.read();
byte[] arr = {b1, b2};
System.out.print(new String(arr)); //因为一个汉字两个字节而上面的byte数组里面存放的就是两个汉字的字节然后打包给一个String类 String类默认的是GBK码表可以将两个字节解读为汉字
} else {
System.out.print((char)b1);
}
}
fis.close();
}
作者:
小小企鹅
时间:
2012-5-12 08:51
本帖最后由 小小企鹅 于 2012-10-27 22:35 编辑
arr为byte数组 ,String(byte[] bytes) 构造一个新String,内容为arr的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2