2019-02-27

作者: DreamPath | 来源:发表于2019-02-28 19:38 被阅读4次

    基于IO流基础总结

    io解说:

    • 按照流动的方向,以内存为基准,分为 输入input 和 输出 output ,即流向内存是输入流,流出内存的输出流。
    • Java中I/O操作主要是指使用 java.io 包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写 出数据。

    1.根据数据的流向分为:输入流和输出流

    • 输入流 :把数据从其他设备 上读取内存 中的流。
    • 输出流 :把数据从 内存写出到 其他设备 上的流。
      2.根据数据的类型分为:字节流和字符流
    • 字节流 :以字节为单位,读写数据的流。
    • 字符流 :以字符为单位,读写数据的流。
    io.png

    字节流

    1.由于任何数据都是以二进制数字的形式存储的,因此一切的文件数据(图片,视频,音乐,文件)都可以用字节流传输。
    2.无论使用什么样的流对象,底层传输的始终为二进制数据。

    字节输出流 OutputStream

    java.io.OutputStream 抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地。

    • public void close() :关闭此输出流并释放与此流相关联的任何系统资源。
    • public void flush() :刷新此输出流并强制任何缓冲的输出字节被写出。
    • public void write(byte[] b) :将 b.length字节从指定的字节数组写入此输出流。
    • public void write(byte[] b, int off, int len) :从指定的字节数组写入 len字节,从偏移量 off开始输 出到此输出流。
    • public abstract void write(int b) :将指定的字节输出流。
      注意
    • close方法,当完成流的操作时,必须调用此方法,释放系统资源。
    FileOutputStream子类
    • 1.OutputStream是抽象类,不能直接实例化。因此需使用子类来创建对象。
    • 2.java.io.FileOutputStream 类是文件输出流,用于将数据写出到文件。
      注意事项:
      当你创建一个流对象时,必须传入一个文件路径。该路径下,如果没有这个文件,会创建该文件。如果有这个文件,会清空这个文件的数据。

    例如:

    package file.OutputStreamDemo;
    
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.OutputStream;
    
    /**
     * public FileOutputStream(File file) :创建文件输出流以写入由指定的 File对象表示的文件。
     * public FileOutputStream(String name) : 创建文件输出流以指定的名称写入文件。
     */
    public class FileDemo1 {
        public static void main(String[] args) throws FileNotFoundException {
            //使用file对象创建流对象
            File file=new File("D:\\Java代码\\Java基础加强\\a.txt");
            OutputStream outputStream=new FileOutputStream(file);
    
            //直接使用文件名创建流对象
            FileOutputStream fileOutputStream=new FileOutputStream(
                    "D:\\Java代码\\Java基础加强\\a.txt");
        }
    }
    
    写出字节数据
    1. 写出字节: write(int b) 方法,每次可以写出一个字节数据。
    package file.OutputStreamDemo;
    
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class FileOutputStreamDemo2 {
        public static void main(String[] args) throws IOException {
            FileOutputStream fileOutputStream=new FileOutputStream("D:\\Java代码\\Java基础加强\\a.txt");
                fileOutputStream.write(97);// 写出第1个字节
                fileOutputStream.write(98);// 写出第2个字节
                fileOutputStream.write(99);// 写出第3个字节
                fileOutputStream.write(100);// 写出第4个字节
                        //关流
                            fileOutputStream.close();
        }
    
    }
    

    1.虽然参数为int类型四个字节,但是只会保留一个字节的信息写出。

    1. 流操作完毕后,必须释放系统资源,调用close方法,千万记得。

    相关文章

      网友评论

        本文标题:2019-02-27

        本文链接:https://www.haomeiwen.com/subject/kxzxuqtx.html