• Java日志第37天 2020.8.11


    字节输入流

    java.lang.InputStream

    此抽象类是表示字节输入流的所有类的超类

    所有子类中共性的方法:

    1. int read():从输入流中读取数据的下一个字节

    2. int read(byte[] b) :从输入流中读取一定数量的字节,并将其存储在缓冲区数组b中

    3. void close():关闭此输入流并释放与该流关联的所有系统资源

    FileInputStream

    文件字节输入流

    java.io.FiIeInputStream entends InputStream

    作用:把硬盘文件中的数据读取到内存中使用

    构造方法

    - FileInputStream(String name)

    - FileInputStream(File file)

    读取一个字节

    import java.io.FileInputStream;
    import java.io.IOException;
    
    public class Demo01InputStream {
    
        public static void main(String[] args) throws IOException {
            //创建FileInputStream对象,构造方法中绑定要读取的数据源
            FileInputStream fis = new FileInputStream("E:\Java\Practice\src\Practice\demo15\a.txt");
            //使用FileInputStream对象中的方法read,读取文件
            //read方法一次读取一个字节,读取至文件末尾返回-1
            int len = fis.read();
            System.out.println((char) len);
    
            len = fis.read();
            System.out.println((char) len);
    
            len = fis.read();
            System.out.println((char) len);
    
            //释放资源
            fis.close();
        }
    }

    结果如下:

     以上的重复代码可以使用while循环

    import java.io.FileInputStream;
    import java.io.IOException;
    
    public class Demo01InputStream {
    
        public static void main(String[] args) throws IOException {
            //创建FileInputStream对象,构造方法中绑定要读取的数据源
            FileInputStream fis = new FileInputStream("E:\Java\Practice\src\Practice\demo15\a.txt");
            //使用FileInputStream对象中的方法read,读取文件
            //read方法一次读取一个字节,读取至文件末尾返回-1
            int len = 0;
            while((len = fis.read()) != -1){
                System.out.println((char) len);
            }
    
            //释放资源
            fis.close();
        }
    }

    读取多个字节

    import java.io.FileInputStream;
    import java.io.IOException;
    import java.util.Arrays;
    
    public class Demo01InputStream {
    
        public static void main(String[] args) throws IOException {
            //创建FileInputStream对象,构造方法中绑定要读取的数据源
            FileInputStream fis = new FileInputStream("E:\Java\Practice\src\Practice\demo15\a.txt");
            //使用FileInputStream对象中的方法read,读取文件
            byte[] bytes = new byte[2];
            int len = fis.read(bytes);
            System.out.println("len = "+len);
            System.out.println(new String(bytes));
    
            len = fis.read(bytes);
            System.out.println("len = "+len);
            System.out.println(new String(bytes));
    
            len = fis.read(bytes);
            System.out.println("len = "+len);
            System.out.println(new String(bytes));
    
            //释放资源
            fis.close();
        }

    结果如下:

  • 相关阅读:
    软工网络15个人阅读作业1
    JAVA课程设计-猜数游戏 201521123017
    201521123017 《Java程序设计》第14周学习总结
    201521123017 《Java程序设计》第13周学习总结
    201521123017 《Java程序设计》第12周学习总结
    个人作业5---软工个人总结
    网络软工个人作业4——Alpha阶段个人总结
    软件工程网络15个人作业3(201521123028 李家俊)
    软工网络15结对编程练习
    软件工程网络15个人阅读作业2(201521123028李家俊)
  • 原文地址:https://www.cnblogs.com/Gazikel/p/13485444.html
Copyright © 2020-2023  润新知