码迷,mamicode.com
首页 > 其他好文 > 详细

字节流

时间:2017-10-18 21:39:12      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:数组元素   color   ring   声明   创建   object类   out   很多   i++   

java最基本字节流类的顶层类有两个,一个是基本输入流InputStream类,另一个是基本输出流OutputStream类,为Object类派生,同时InputStream和OutputStream又派生很多子类。

所有的字节流都是InputStream抽象类和OutputStream抽象类的子类。在创建流时通过创造它们的子类来创造流

  •   read()从流中读取一个字节(整型),遇到尾返回-1
  • int read(byte[] b)读取b.length个字节存入数组b中,返回实际读取的字节数
  • int read(byte[] b,int off,int len)返回实际读取的字节数
  • int available()返回流中可读字节数
  • void close()关闭输入流

  流式输入最基本的特点就是读操作的顺序性,每个流都有一个位置指针,它在流刚被创建式产生并指向流的第一个数据,以后的每次读操作都是在当前位置指针处执行,伴随流操作的执行,位置指针自动后移,指向下一个未被读取的数据。Inputstream用来控制位置指针的有以下几个:

  • public long skip(long n)
  • public void mark()在当前位置指针处做一个标记
  • public void reset()将位置指针返回到标记的位置
    import java.io.*;
    public class ByteArray {
    public static void main(String[] args) {
        byte[] byteArray = new byte[10];//声明、定义数组
        byte[] byteArr2 = new byte[10];
        DataInputStream data = new DataInputStream(System.in);/*创建数据输入流对象*/
        ByteArrayInputStream byteStream;
        try {
            data.read(byteArray);//执行对象方法从键盘上输入数据放入字节数组中
            byteStream = new ByteArrayInputStream(byteArray);/*创建字节数组输入流对象*/
            byteStream.read(byteArr2,3,5);/*将流中前5字节放入byteArray2的第三位置之后*/
        } catch (IOException e) {
            System.out.println(e.toString());
        }
        for(int i=0;i<byteArray.length;i++)
            System.out.print(byteArray[i] + " ");//打印数组元素
        System.out.println();
        for(int i = 0;i<byteArr2.length;i++)
            System.out.print(byteArr2[i] + "  ");
    }
    }

     

字节流

标签:数组元素   color   ring   声明   创建   object类   out   很多   i++   

原文地址:http://www.cnblogs.com/gride-glory/p/7688904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!