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

时间:2014-12-18 09:00:50

标签: java binary integer

我正在编写一种方法来将任何文件格式转换为二进制格式。我正在使用以下代码行。但是,我没有得到它是如何工作的。如果有人知道这些线如何工作,请详细说明。 这是线。

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

2 个答案:

答案 0 :(得分:0)

读取整数,将其转换为其二进制表示的字符串,并将8 0添加到前面,这样无论原始值有多小,您至少有8个字符的有效二进制表示。因此,分配给s的是具有尽可能多的前导零的二进制表示,通过获取上述连接的最后8个字符将其填充为8个字符。

答案 1 :(得分:0)

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

import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;

Path path = Paths.get("path/to/my/file");
byte[] data = Files.readAllBytes(path);

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

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

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