java _io_数据流

  • 保存数据和数据类型,方便后期直接获取数据类型而不用强转
  • 使得字符串以外的类型也能写进字节数组里
  • DataInputStream(字节流)和DataOutputStream(字节流)
  • 读取必须和写入的顺序一致

    //写出到字节数组
    ByteArrayOutputStream os=new ByteArrayOutputStream();
    DataOutputStream dos=new DataOutputStream(new BufferedOutputStream(os));
    
    //操作数据类型,加数据
    dos.writeUTF("哈哈哈");  //保存字符串
    dos.writeInt(18);       //保存int类型
    dos.writeBoolean(false); //保存布尔类型
    dos.writeChar('q');     //保存char类型
    dos.flush();  //强制刷新,使数据读取到内存里(字节数组)
    
    byte[] datas=os.toByteArray();  //获取写入的数据
    //读取,顺序与写出保持一致,顺序不对会报错
    DataInputStream dis=new DataInputStream(new BufferedInputStream(new ByteArrayInputStream(datas)) );
    String s=dis.readUTF();
    int age=dis.readInt();
    boolean flag=dis.readBoolean();
    char ch=dis.readChar();
上一篇:java实现TCP通信


下一篇:由于原始int值而获取OptionalDataException,但如何在JAVA中避免它