• review30


     

    数据流

    DateInputStream和DataOutputStream类创建的对象称为数据输入流和数据输出流。这两个流是很有用的流,它们允许程序按着机器无关的风格读取Java原始数据。也就是说,当读取一个数值时,不必关心这个数值应当是多少个字节。

    以下是DataInputStream和DataOutputStream的构造方法。

    • DataInputStream(InputStream in)创建的数据输入流指向一个由参数in指定底层输入流。
    • DataOutputStream(OutputStream out)创建的数据输出流指向一个由参数out指定的底层输出流。

    数据流需要使用到底层流。

    代码展示如下所示:

    import java.io.DataInputStream;
    import java.io.DataOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class Test02 {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            File file = new File("E:/test/write01.txt");
            
            try {
                FileOutputStream out = new FileOutputStream(file);
                DataOutputStream outData = new DataOutputStream(out);
                outData.writeInt(100);
                outData.writeLong(123456789);
                outData.writeFloat(3.1415926f);
                outData.writeDouble(987654321.1234563);
                outData.writeBoolean(false);
                outData.writeChars("Hello! 大家好");
                
            } 
            catch (IOException e) {}
            
            try {
                FileInputStream in = new FileInputStream(file);
                DataInputStream inData = new DataInputStream(in);
                System.out.println(inData.readInt());
                System.out.println(inData.readLong());
                System.out.println(inData.readFloat());
                System.out.println(inData.readDouble());
                System.out.println(inData.readBoolean());
                
                char c = '';
                while((c = inData.readChar()) != '')
                System.out.print(c);
                
            } 
            catch (IOException e) {}
            
            
        }
    
    }

    运行结果如下所示:

    字符串的读取是读一个一个字符。

    该代码的数据流没有关闭,这样是不正确的。

    只有字符数组里是可以不用关闭的。

  • 相关阅读:
    【大数据云原生系列】大数据系统云原生渐进式演进最佳实践
    Apache Flink on K8s:四种运行模式,我该选择哪种?
    Istio 运维实战系列(2):让人头大的『无头服务』-上
    istio 常见的 10 个异常
    Prometheus Metrics 设计的最佳实践和应用实例,看这篇够了!
    腾讯会议大规模使用Kubernetes的技术实践
    腾讯云推出云原生etcd服务
    Regionals 2014 Asia
    HDU1754 I Hate It splay
    HNOI2002 营业额统计 splay
  • 原文地址:https://www.cnblogs.com/liaoxiaolao/p/9457321.html
Copyright © 2020-2023  润新知