Java怎样读取二进制文件?

有一个index.png位于D:/Users/

现在需要读取这个文件并UTF-8转换为byte[]

请各位大佬帮忙

FileInputStream就可以。既然是图片,怎么会有utf-8

File file = new File("D:/Users/xxx.png");
InputStream input = new FileInputStream(file);
byte[] byt = new byte[input.available()];
input.read(byt);

public void test055() throws IOException {
File inFile = new File("d:\Chrysanthemum.jpg");
FileInputStream fileInputStream = new FileInputStream(inFile);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int i;
//转化为字节数组流
while ((i = fileInputStream.read()) != -1) {
byteArrayOutputStream.write(i);
}
fileInputStream.close();
// 把文件存在一个字节数组中
byte[] filea = byteArrayOutputStream.toByteArray();

    byteArrayOutputStream.close();
    String encoding = "ISO-8859-1";
    String fileaString = new String(filea, encoding);
    System.out.println(fileaString);
    // 写入文件
    FileOutputStream fileOutputStream = new FileOutputStream("d:/b.png");
    fileOutputStream.write(fileaString.getBytes(encoding));
    fileOutputStream.flush();
    fileOutputStream.close();