zoukankan      html  css  js  c++  java
  • java.io.OutputStream & java.io.FileOutputStream

    java.io.OutputStream & java.io.FileOutputStream

    1、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) 从指定的b字节数组写入len字节,从偏移量off开始输出到此输出流
    public abstract void write(int b) 将指定的字节输出到流

    2、java.io.FileOutputStream extends OutputStream

    构造方法 作用
    FileOutputStream(String name) 创建一个有指定名称的文件,把FileOutputStream对象指向创建好的文件,如果文件已存在,则覆盖
    FileOutputStream(File file) 创建一个有指定名称的文件,把FileOutputStream对象指向创建好的文件,如果文件已存在,则覆盖
    FileOutputStream(String name, boolean append) 创建一个有指定名称的文件,把FileOutputStream对象指向创建好的文件,如果文件已存在,append为true则在原文件追加写,否则创建新文件,覆盖原文件
    FileOutputStream(File file, boolean append) 创建一个有指定名称的文件,把FileOutputStream对象指向创建好的文件,如果文件已存在,append为true则在原文件追加写,否则创建新文件,覆盖原文件

    参数:String name(写入的目的地是一个文件的路径)

    File file(写入数据的目的地是一个文件)

    构造方法的作用

    • 创建一个FileOutputStream对象
    • 根据构造方法传递的文件,文件路径创建一个文件
    • 将FileOutputStream对象指向创建好的文件

    3、写入数据的原理(内存 --> 硬盘文件)

    java程序 --> JVM --> OS --> OS调用写数据的方法 --> 把数据写入到文件

    4、字节输出流的使用步骤

    • 创建一个FileOutputStream对象,构造方法中传递文件路径或者文件
    • 调用FileOutputStream对象的方法write,把数据写入到文件
    • 使用完毕要清空内存,释放资源
    package cn.zhuobo.day14.streamOutput;
    
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class Demo01FileOutputStream {
        public static void main(String[] args) throws IOException {
        // 创建一个FileOutputStream对象,构造方法中传递文件路径或者文件
            FileOutputStream fos = new FileOutputStream("/home/zhuobo//Desktop/a.txt");
            
            // 调用FileOutputStream对象的方法write,把数据写入到文件,指定的字节97 是 a
            fos.write(97);
            // 释放资源,close流
            // fos.close();
            byte[] bytes = {97, 98, 99, 100};// abcd
            //fos.write(bytes);// aabbc
            //fos.close();
            fos.write(bytes, 1, 2);// bc
            // 写入字符串
            String str = "hello";
            byte[] bytes1 = str.getBytes();// 字符串转化为字符数组再写入
            fos.write(bytes1);
            fos.write("
    ".getBytes());// 换行
            fos.close();
        }
    }
    
  • 相关阅读:
    python学习之调试:
    python学习之调试 错误捕捉及处理
    python之面向对象
    python学习之模块:
    python学习之内部函数:
    python学习之高级特性:
    python学习之结构语句
    python学习之列表元组,字典
    getopt使用例子
    找到系统盘被打满文件
  • 原文地址:https://www.cnblogs.com/zhuobo/p/10657195.html
Copyright © 2011-2022 走看看