编程语言
首页 > 编程语言> > java中IO流

java中IO流

作者:互联网

JAVA io流

一、IO流原理及其相关概念

二、IO流的分类

抽象基类 字节流 字符流
输入流 InputStream(字节输入 流) Reader(字符输入流)
输出流 OutputStream(字节输出流) Writer(字节输出流)
  1. 抽象类不能实例化,不一定有抽象方法
  2. JAVA中IO流涉及的类非常多,但其多而规则,所有的类都是从以上的4个抽象基类派生的
  3. 由这4个抽象基类派生的子类名称都是以其父类作为子类的后缀名
抽象基类 文件流(节点流) 缓冲流(处理流的一种)
InputStream FileInputStream BufferedInputStream
OutputStream FileOutputStream BufferedOutputStream
Writer FileWriter BufferedWriter
Reader FileReader BufferedReader
package priv.stream.java;

import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class FileReaderWriterTest {

    public static void main(String[] args) throws IOException {
        // 1.实例化File类的对象,指明要操作的文件
        File file = new File("E:\\原D盘文件\\code\\java\\基础语法\\src\\priv\\stream\\java\\hello.txt");
        System.out.println(file.getAbsoluteFile());
        //2.提供具体的流
        FileReader fr = new FileReader(file);
        //3.数据的读入
        int data = fr.read();
        while (data != -1)
        {
            System.out.print((char)data);
            data = fr.read();
        }
        //3.数据的读入(简化)
        int data;
        while(( data = fr.read() )!=-1)
        {
             System.out.print((char)data);
        }
        fr.close();
    }
}

上面的异常是通过抛出来解决,下面是通过try-catch-finally来解决(快捷键Alt+Ctrl+T)

package priv.stream.java;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class FileReaderWriterTest {

    public static void main(String[] args) {
        FileReader fr = null;
        try {
            File file = new File("E:\\原D盘文件\\code\\java\\基础语法\\src\\priv\\stream\\java\\hello.txt");
            System.out.println(file.getAbsoluteFile());
            fr = new FileReader(file);
            int data ;
            while ((data = fr.read())!=-1)
            {
                System.out.print((char)data);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
        }
        try {
            if(fr!=null)
            fr.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

说明:读入的文件一定要存在,否则就会报FileNotFoundException

标签:fr,java,IO,FileReader,io,data,字节
来源: https://www.cnblogs.com/j-yk/p/15851061.html