Java 任何文件格式的二进制形式

Java 任何文件格式的二进制形式,java,binary,integer,Java,Binary,Integer,我正在写一个方法,将任何文件格式转换成二进制格式。我正在使用以下代码行。但我不明白它是怎么工作的。如果有人知道这些线路是如何工作的,请详细说明。 这是台词 String s= "0000000" +Integer.toBinaryString(new FileInputStream(File File1).read()); s=s.substring(s.length()-8); 读取一个整数,将其转换为二进制表示形式的字符串,并在前面添加8个0,这样,无论原始值有多小,有效二进制表示形式至少

我正在写一个方法,将任何文件格式转换成二进制格式。我正在使用以下代码行。但我不明白它是怎么工作的。如果有人知道这些线路是如何工作的,请详细说明。 这是台词

String s= "0000000" +Integer.toBinaryString(new FileInputStream(File File1).read());
s=s.substring(s.length()-8);

读取一个整数,将其转换为二进制表示形式的字符串,并在前面添加8个0,这样,无论原始值有多小,有效二进制表示形式至少有8个字符。因此,分配给s的是二进制表示法,其中前导零的数量可以根据需要通过提取上述连接的最后8个字符来填充到8个字符。

更新:由于您现在将答案标记为Java,因此可以使用
Files.readAllBytes(Path)
将文件读入字节数组(从JDK 7开始):


假设您使用的是C#,则可以使用
file.ReadAllBytes
将文件加载到字节数组中,如下所示:

var bytes = File.ReadAllBytes(@"C:\path\to\my\file.jpg");

请注意,在处理二进制数据(如图像文件)时,通常不使用字符串。

添加语言标记。“我正在编写一种方法,将任何文件格式转换为二进制格式”——没有多大意义。您能详细说明一下该规范吗?例如,文件格式为image1.jpg。我想把这个文件转换成8位的二进制字符串流。谢谢你的努力。请解释一下第二行。@MohsinAli:谢谢。如果你喜欢答案,你可以通过向上投票的方式在StackOverflow上显示。
var bytes = File.ReadAllBytes(@"C:\path\to\my\file.jpg");