I/O————数据流

Posted yeyangtao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了I/O————数据流相关的知识,希望对你有一定的参考价值。

如何将一个long类型的数据写入文件中?

  转字符串 → 通过 getbytes() 写进去,费劲,而且在此过程中 long 类型的数需要不断地转换.

  现在,Java 中的数据流能够很好的解决这个问题(不需要转换,直接写进去)

DataInputStream 数据输入流 
DataOutputStream 数据输出流

数据流写入并读取数据:

注意:

基于字节输入流和字节输出流FileInputStream和FileOutputStream

要用DataInputStream 读取一个文件,这个文件必须是由DataOutputStream 写出的,

否则会出现EOFException,因为DataOutputStream 在写出的时候会做一些特殊标记,

只有DataInputStream 才能成功的读取。

public class DataStreamTest {

    public static void main(String[] args) {
        write();
        read();
        

    }
    public static void read() {
        File file = new File("D:\\lolfilder\\datastream.txt");
        try(
                FileInputStream fis = new FileInputStream(file);
                DataInputStream dis = new DataInputStream(fis);
                
                )
        {
            boolean b = dis.readBoolean();
            
            int i = dis.readInt();
            String str = dis.readUTF();
            System.out.println("获取boolean型:"+b);
            System.out.println("获取int型:"+i);
            System.out.println("获取string型:"+str);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static void write() {
        File file = new File("D:\\lolfilder\\datastream.txt");
        try(
                FileOutputStream fos = new FileOutputStream(file);
                DataOutputStream dos = new DataOutputStream(fos);
                
                ) 
        {
            dos.writeBoolean(false);
            dos.writeInt(300);
            dos.writeUTF("这是数据输出流");
            
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

 

以上是关于I/O————数据流的主要内容,如果未能解决你的问题,请参考以下文章

《信息安全系统设计基础》第八周学习总结

java代码实现socket接口通讯(堵塞I/O)

JSON文件I / O:额外数据错误

Netty图文解析+代码Demo

select函数与I/O多路转接

select函数与I/O多路转接