zoukankan      html  css  js  c++  java
  • 字节流和字符流(InputStream类和OutputStream类)

    java流包括字节流和字符流,字节流通过I/O设备以字节数据的方式读入,而字符流则是通过字节流读入数据转换成字符“流"的形式由用户驱使。

    InputStream是所有字节输入流的父类。OutputStream是所有字节输出流的父类。

    在Java的I/O流中所有对字节流处理的类,都继承自InputStream类和OutputStream类,这是两个抽象类。

    1:InputStream类

    InputStream类是一个抽象类,作为字节输入流的直接或间接父类,它定义了许多有用的、所有子类必须的方法,包括读取、移动指针、标记、复位、关闭等方法。InputStream类的常用方法有以下几种:

    Public abstractintread():读取一个byte数据,返回值是高位补0的int类型值。

    Public int read(byteb[]):读取b.length个字节的数据放到b数组中。返回值是读取的字节数。该方法实际上是调用下一个方法实现的。

    public int read(byteb[],intoff,intlen):从输入流中最多读取len个字节数据,存放到偏移量为off的b数组中。

    public int availabel():返回输入流中可以读取的字节数。注意,若输入阻塞,当前线程将被挂起,如果InputStream对象调用这个方法的话,它只会返回0,这个方法须由InputStream类的子类调用才有用。

    public long skip(longn):忽略输入流中的n个字节,返回值是实际忽略的字节数,跳过一些字节来读取。

    public int close():在使用完之后,必须对打开的流进行关闭。

    2:OutputStream类

    OutputSteam类也是抽象类,作为字节输出流的直接或间接父类,当程序需要向外部设备输出数据时,需要创建OutputStream类的某一个子类对象来完成。与InputStream类似,这些方法也可能抛出IOExpection异常。OutputStream类中的常用方法有以下几种:

    public void write(byteb[]):将参数b的字节写到输出流中。

    public void write(byteb[],intoff,intlen):将参数b的从偏移量off开始的len个字节写入到输出流中。

    public abstractvoid write(intb):先将int转换成byte类型,低字节写入到输出流中。

    public void flush():将数据缓冲区中的数据全部输出,清空缓冲区。

    public void close():关闭输出流并释放与流相关的系统资源。

  • 相关阅读:
    在controller的action内, 得到用户发过来的请求地址和参数url
    php Connection timed out after 30000 milliseconds
    htmlspecialchars_decode 解决掉 &
    max_spare_servers到底是个什么意思?
    mysql 不同条件count ,多条件count()
    阿里云centOS7.4 ftp连接不上的问题
    阿里云 导入自定义的镜像
    thinkphp3.2.3 + nginx 配置二级域名
    FlashFXP客户端 FTP连接,连接很慢的情况,
    PHP对象的使用,什么时候可以用中括号[], 什么时候可以用箭头->
  • 原文地址:https://www.cnblogs.com/Angella/p/6068169.html
Copyright © 2011-2022 走看看