Java IO 读文件的各种方法总结

IO分为字节流和字符流,字符就是简单的字符串存储,从理伦上讲,在内存中所有的数据都是二进制,是一个字节一个字节的序列,所以字节流可以存储像图片、图像等文件。现在有一个文件,分别用字节流和字符流来实现。

[b]1. 字符读取(一次读若干个数据)[/b]

FileReader reader = new FileReader(file);
char buf[] = new char[1024];
int ch;
while ((ch = reader.read(buf)) != -1) {
buffer.append(buf);
buf = new char[1024]; // 一定要清掉啊
}
System.out.println(buffer.toString());


[b]2. 字符读取(一次读一个字符)[/b]

FileReader reader = new FileReader(file);
int ch;
while ((ch = reader.read()) != -1) {
buffer.append((char) ch);
}
System.out.println(buffer.toString());


[b]3. 字符读取(一行一行地读)[/b]
BufferedReader reader = null;
String data;
InputStreamReader isr = new InputStreamReader(
new FileInputStream(file), "GB2312");
reader = new BufferedReader(isr);
while ((data = reader.readLine()) != null) {
buffer.append(data);
}
reader.close();
System.out.println(buffer);



[b]4. 字节读取(一次读完)[/b]

FileInputStream in = new FileInputStream(file);
int size = in.available();
byte[] data = new byte[size];
in.read(data);
in.close();
String str = new String(data, "GB2312");
System.out.println(str);


[b]5. 字节读取(一次读一个字节)
[/b]
FileInputStream in = new FileInputStream(file);
int data;
while ((data = in.read()) != -1) {
buffer.append((char) data);
}
System.out.println(buffer.toString());


[b]6. 字节读取(一次读若干个字节)[/b]

FileInputStream in = new FileInputStream(file);
byte buf[] = new byte[1024];
while (in.read(buf) != -1) {
buffer.append(new String(buf, "GB2312"));
buf = new byte[1024];
}
System.out.println(buffer.toString());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值