首页 > 代码库 > Java IO - 字符流

Java IO - 字符流

需要读取的目标文件:

// 目标文件String pathName = "d:/z.txt";File file = new File(pathName);

 

使用FileReader类读取文本:

// 使用FileReader读取文件String str = null;FileReader fileReader = new FileReader(file);while ((str = fileReader .readLine()) != null) {    System.out.println(str);}//关闭输入流fileReader.close();
View Code

 

使用LineNumberReader类读取文件可以方便的获取“行号”,或者进行其他有关行号的操作:

// 读取文件FileReader fileReader = new FileReader(file);LineNumberReader lineReader= new LineNumberReader(fileReader);String str = null;while ((str = lineReader.readLine()) != null) {        //获得行号:lineReader.getLineNumber()    System.out.println(lineReader.getLineNumber() + ":" + str);}lineReader.close();fileReader.close();
View Code

 

以上是两种以读取字符流的方式,使用系统默认的字符编码标准来读取文本

下面使用字节流,以指定的字符编码读取文本:

        // 获得文件输入流        BufferedInputStream ins = new BufferedInputStream(new FileInputStream(file));        // 将文件输入流对象按照指定的UTF-8标准解码,构造一个InputStreamReader对象。        InputStreamReader inReader = new InputStreamReader(ins,"UTF-8");        //使用BufferedReader按行读取内容        BufferedReader bufferedReader = new BufferedReader(inReader);        str = null;        while ((str = bufferedReader.readLine()) != null) {            System.out.println(str);        }        //关闭输入流        bufferedReader.close();        bufferedReader = null;
View Code