InputStream InputStreamReader 输入流读取文件

来源:互联网 发布:中港网络系统有限公司 编辑:程序博客网 时间:2024/06/06 00:32
package htc;
/*------------FoolishDoger------------------2017-9-28--------------*/

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;


public class onlyreader {
public static void main(String args[]) throws IOException{
/*
* 这是一个通过流来读取文件的操作 
*/
File file = new File("c:\\sf.txt");//创建一个file对象
//创建输入流,此时读取的是文件的字节流,in.read()读取的是字节
InputStream in = new FileInputStream(file);
//InputStreamReader 做的操作是将字节流转换成字符流
InputStreamReader rd = new InputStreamReader(in);
//创建一个rd的字符留缓冲区,将字符装载入缓冲区中
BufferedReader bf = new BufferedReader(rd);
/*
* 一、不用缓冲区进行操作
*/
// String ss = new String();
// char[] aa = new char[1024];
// int len;
// while(bf.read(aa)!=-1){
// System.out.println(aa);
// }
/*
* 二、利用缓冲区进行操作 有read() readline()方法
*/
//用缓冲区的read(字符的读取,返回值为int)读取文件
String str = null;
int aaa;
while((aaa=bf.read())!=-1){
str = str +(char)aaa;
}
System.out.println(str);
//用缓冲区的readLine(行的读取,返回值为String)读取文件
// while((str=bf.readLine())!=null){
// System.out.println(str);
// }
// 关闭rd流
// rd.close();
}
}
原创粉丝点击