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.txt 文件内容如下:

     控制台输出的结果为:

      hello world!

  • 相关阅读:
    打造自定义 eslint
    二叉树(三): 二叉查找树
    二叉树(二): 补充
    二叉树(一): 遍历
    redux 源码浅析
    react-redux 源码浅析
    WebComponents使用以及思考
    SHELL 语法以及实例
    React-Native 原生 APP 更新
    关于 cdn 在项目中的使用
  • 原文地址:https://www.cnblogs.com/jhtian/p/14110083.html
Copyright © 2011-2022 走看看