Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中将二进制数据写入文件?_Java_Io_Filestream_Binaryfiles_Java Io - Fatal编程技术网

如何在Java中将二进制数据写入文件?

如何在Java中将二进制数据写入文件?,java,io,filestream,binaryfiles,java-io,Java,Io,Filestream,Binaryfiles,Java Io,有没有办法像C#那样将一些值存储在二进制文件中 例如,在C#中,它将是: BinaryWriter bw = new BinaryWriter(MyFilStream); bw.Write(data...); 然后,像这样读它 BinaryReader br = new bla bla...; br.ReadInt(file); 有没有一种在Java中实现这一点的方法?我在谷歌上读了很多二进制数据,但我只是找到了一些JPG文件,不明白…你可以利用和/或在Java中存储和读取二进制数据 下面是

有没有办法像C#那样将一些值存储在二进制文件中

例如,在C#中,它将是:

BinaryWriter bw = new BinaryWriter(MyFilStream);
bw.Write(data...);
然后,像这样读它

BinaryReader br = new bla bla...;
br.ReadInt(file);
有没有一种在Java中实现这一点的方法?我在谷歌上读了很多二进制数据,但我只是找到了一些JPG文件,不明白…

你可以利用和/或在Java中存储和读取二进制数据

下面是一个如何完成的示例:

import java.io.*;

public class Test{
    public static void main(String args[])throws IOException{

        DataInputStream d = new DataInputStream(new 
                                 FileInputStream("test.txt"));

        DataOutputStream out = new DataOutputStream(new 
                                 FileOutputStream("test1.txt"));

        String count;
        while((count = d.readLine()) != null){
            String u = count.toUpperCase();
            System.out.println(u);
            out.writeBytes(u + "  ,");
        }
        d.close();
        out.close();
    }
}
编者按:

.close()
语句应包装在
finally
块中:

finally {
    d.close();
    out.close();
}
来源:


选中可序列化的
ObjectInputStream
ObjectOutputStream
,)是的,您可以写入(和读取)二进制数据。我建议您看看。您应该确保在
finally
块中关闭流。