File对象转为字节数组
时间: 2023-08-04 22:12:45 浏览: 114
可以使用Java中的FileInputStream类和ByteArrayOutputStream类将File对象转为字节数组。
下面是一个示例代码:
```java
import java.io.*;
public class FileToByteArray {
public static void main(String[] args) {
File file = new File("file.txt");
byte[] bytes = null;
try (FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream()) {
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = fis.read(buffer)) != -1) {
bos.write(buffer, 0, bytesRead);
}
bytes = bos.toByteArray();
} catch (IOException e) {
e.printStackTrace();
}
if (bytes != null) {
System.out.println("File as byte array: " + bytes);
}
}
}
```
在上面的代码中,首先创建一个File对象,然后使用FileInputStream读取该文件,同时使用ByteArrayOutputStream将读取的内容写入字节数组中。最后,使用toByteArray()方法将ByteArrayOutputStream中的内容转为字节数组。
注意,在使用完FileInputStream和ByteArrayOutputStream后,需要将它们关闭,这里使用了Java 7中的try-with-resources语法来简化关闭操作。
阅读全文