通过文件路径获得对象
// 读取文件路径转换成byte[]类型
private static byte[] getBytes(String str) throws IOException {
byte[] bytes = null;
if (str != null || !str.equals("")) {
File file = new File(str);
InputStream is = new FileInputStream(file);
int length = (int) file.length();
if (length > Integer.MAX_VALUE) // 当文件的长度超过了int的最大值
{
System.out.println("路径过长!!");
return null;
}
bytes = new byte[length];
int offset = 0;
int numRead = 0;
while (offset < bytes.length
&& (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) {
offset += numRead;
}
// 如果得到的字节长度和file实际的长度不一致就可能出错了
if (offset < bytes.length) {
System.out.println("字符长度图实际长度不一致");
return null;
}
is.close();
}
return bytes;
}