zoukankan      html  css  js  c++  java
  • 15 IO流(十二)——数据流Data InputStream/OutputStream 未学会

    数据流的引入

    Data流的父类是Filter抽象基类,也就是说Data流是装饰流。

    数据流可以将数据的类型也一起传输。

    数据流的读取写入顺序(数据类型的读写顺序)需要一致。

    未完成代码

    /**
    *Data流、数据流
    *1.为了演示,我们先将数据写入数据流,再从中读取出来
    *2.读取的顺序与写出保持一致
    *DataInputStream
    *DataOutputStream
    */
    import java.io.*;
    public class _01DataTest
    {
    	public static void main(String[] args){
    		//声明流
    		ByteArrayOutputStream bos = null;
    		DataOutputStream dos= null;
    		ByteArrayInputStream bis = null;
    		DataInputStream dis = null;
    		try{
    		//定义Data输出流
    		bos = new ByteArrayOutputStream();//节点流
    		//定义了输出流但没有输出目的地,当然也可以有,比如写到文件去
    		dos = new DataOutputStream(new BufferedOutputStream(bos));
    		//先将数据写入输出流
    		byte[] data = {12,34,33,1};
    		//dos.write(data);//写入一个数组
    		dos.writeBoolean(false);//写入一个布尔值
    		dos.writeByte(101);//写入一个byte值
    		dos.writeShort(122);//写short值
    		dos.write(99);//写入Int型
    		dos.writeLong(990l);//写入long型
    		dos.writeFloat(123.1f);//写入float型
    		dos.writeDouble(123.3);//写入double型
    		dos.writeChar('我');//写入一个字符值
    		dos.writeChars("以前我没得选,现在我想做个好人");//将一个字符串作为字符序列写入
    		dos.writeUTF("I讨厌0,,,");
    		byte [] datas = bos.toByteArray();//将刚才的数据读出来
    		//定义Data输入流并将datas作为输入源
    		bis = new ByteArrayInputStream(datas);//datas作为Data输入流的源
    		dis = new DataInputStream(bis);
    		//再从输入流中读取数据
    		//byte[] result = new byte[1024];
    		//dis.read(result);
    		//System.out.println(result);
    		String utfResult = dis.readUTF();
    		System.out.println(utfResult);
    		boolean booleanResult = dis.readBoolean();
    		System.out.println(booleanResult);
    		}catch(IOException e){
    			e.printStackTrace();
    		}
    	}
    }
    

      

    在43行报错:EOFException 无法解决。

  • 相关阅读:
    Vue部署到相对目录和解决刷新404的问题
    JavaScript时间格式转换
    在Vue中使用Chart.Js
    进制转换和大数除法
    esp8266必备知识
    php 添加 freetype支持
    Linux系统时间同步问题
    busybox date 时间的加减
    kubesphere-wokespaces
    添加系统环境变量
  • 原文地址:https://www.cnblogs.com/Scorpicat/p/11925991.html
Copyright © 2011-2022 走看看