A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

a
  1. package demo.io;

  2. import java.io.File;
  3. import java.io.FileNotFoundException;
  4. import java.io.FileReader;
  5. import java.io.IOException;
  6. import java.io.InputStreamReader;

  7. public class IODemo3 {

  8.         /**
  9.          * 文本读取
  10.          */
  11.         public static void main(String[] args) {
  12.                 File srcFile = new File("c:\\Java review", "Test7.java");
  13.                 FileReader fr = null;
  14.                 try {
  15.                         fr = new FileReader(srcFile);
  16.                         System.out.println(fr.getEncoding());// 获取编码表
  17.                         // readByChar(fr);//每次读取一个字符
  18.                         readByCharBuffer(fr);//字符缓冲区读取  
  19.                         //选中代码块,按 alt + shift + m 可以将代码块抽取成方法!!! 非常实用
  20.                 } catch (Exception e) {
  21.                         throw new RuntimeException("文件读取失败");
  22.                 } finally {
  23.                         if (null != fr) {
  24.                                 try {
  25.                                         fr.close();
  26.                                 } catch (IOException e) {
  27.                                         e.printStackTrace();
  28.                                 }
  29.                         }
  30.                 }

  31.         }

  32.         /**
  33.          * @param fr
  34.          * @throws IOException
  35.          */
  36.         private static void readByCharBuffer(FileReader fr) throws IOException {
  37.                 char[] cbuf = new char[1024];
  38.                 int len = 0;
  39.                 while((len = fr.read(cbuf))!=-1){
  40.                         System.out.println(new String(cbuf,0,len));
  41.                 }
  42.         }

  43.         private static void readByChar(FileReader fr) throws IOException {
  44.                 int ch = 0;
  45.                 while ((ch = fr.read()) != -1) {
  46.                         System.out.print((char) ch);// 需要将整形转为字符类型
  47.                 }
  48.         }

  49. }
复制代码


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马