将整数作为4个字节写入文件java

Ama*_*tam 5 java file-io

我正在编写一个java程序,我必须将所有整数写入文件.为了提高效率,我只想把int写成只有4个字节(我认为这将是一个二进制文件的东西,但我不确定)并且从文件读回来时我只想直接读取整数(我不想读取字节然后将它们转换为整数).有没有办法做到这一点.

我想将数百万的整数写入文件,我希望该方法快速有效.

我是新手,所以请忍受我.

Wor*_*mbo 6

使用DataOutputStream班级或RandomAccessFile.两者都提供了编写结构化二进制数据的方法,例如你想要的"int as 4 bytes".


Sur*_*ran 6

 FileOutputStream fos = new FileOutputStream("numbers.dat");
 DataOutputStream dos = new DataOutputStream(fos);
 dos.writeInt(my_int);
 dos.flush();
 dos.close();
Run Code Online (Sandbox Code Playgroud)

如果您想要缓冲数据,请将文件流包装到缓冲流中,如下所示:

FileOutputStream fos = new FileOutputStream("numbers.dat");
BufferedOutputStream bos = new BufferedOutputStream(fos);
dos = new DataOutputStream(bos);
Run Code Online (Sandbox Code Playgroud)