zoukankan      html  css  js  c++  java
  • Java IO流 FileOutputStream、FileInputStream的用法   

    FileOutputStream、FileInputStream的使用

    FileOutputStream是OutputStream的继承类,它的主要功能就是向磁盘上写文件。FileOutputStream类中的write方法会把字节一个一个的写入磁盘中。

      以下是使用FileOutputStream输出流将数据写入到指定的文件中,在构建FileOutputStream输出流对象的过程中,如果指定的文件不存在,那么就创建该文件。

    package com.tianjh.io.outputstream;

    import java.io.FileOutputStream;
    import java.io.IOException;

    /**

    • Created on 2020/12/9
    • 向磁盘上指定文件文件写入数据
    • $FileOutputStreamDemo用法

    */
    public class FileOutputStreamDemo {
    public static void main(String[] args) {
    FileOutputStream fileOutputStream;
    try {
    // 构建FileOutputStream对象,"D:/one.txt"文件不存在会自动新建
    fileOutputStream = new FileOutputStream("D:/one.txt");
    // write方法会把字节一个一个的写入磁盘中 write方法支持byte、int基本类型
    byte aa = 97;
    fileOutputStream.write(aa);

            int bb = 98;
            fileOutputStream.write(bb);
    
            char cc = 'c';
            // 没有write(char),只能机器自动从char转到int
            fileOutputStream.write(cc);
    
            // String dd = "100";
            // fileOutputStream.write(dd);
            // fileOutputStream.write(dd)会报错, 因为FileOutputStream流中没有write(String)方法,
            // 不过在PrintStream中有write(String)方法
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    

    }

    FileInputStream是IntputStream的继承类,它的主要功能就是向磁盘上读文件。FileInputStream类的read方法会一个一个字节的从磁盘往回读数据。下列是通过FileInputStream文件输入流读取指定文件 "D:/hello.txt"中的数据。

    package com.tianjh.io.inputstream;

    import java.io.*;

    /**

    • Created on 2020/12/9
    • 从磁盘上读入文件,并输出到控制台
    • $FileInputStreamDemo用法

    */
    public class FileInputStreamDemo {
    public static void main(String[] args) {
    FileInputStream fileInputStream;
    int size;
    try {
    // 使用字符串类型的文件名创建一个文件输入流对象来读取文件
    fileInputStream = new FileInputStream("D:/hello.txt");
    // available() 返回从此输入流中可以读取(或跳过)的剩余字节数的估计值,而
    // 不会被下一次调用此输入流的方法阻塞。
    size = fileInputStream.available();
    for (int i = 0; i < size; i++) {
    System.out.print((char) fileInputStream.read());
    // expected output: hello world!
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }

    控制台输出的结果为:

      hello world!

  • 相关阅读:
    javascript 的原型与原型链的理解
    mysql 复制原理与实践
    mysql 数据库备份的多种方式
    mysql 事务中如果有sql语句出错,会导致自动回滚吗?
    【原】ios下比较完美的单例模式,已验证
    【原/转】ios指令集以及基于指令集的app包压缩策略
    【原】多线程编程中临界区与互斥锁的区别
    【转】Windows的多线程编程,C/C++
    【转】c++中Vector等STL容器的自定义排序
    【转】牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结
  • 原文地址:https://www.cnblogs.com/wwyydd/p/14142170.html
Copyright © 2011-2022 走看看