我从一个hive中获取图像数据,这个数据存储为二进制数据
使用InputStream
对象。问题是,当我尝试对图像进行编码时,它会被编码,但当我尝试解码相同的编码图像时,它会再次发生错误。
我的程序如下:
File file=new File("path");
java.io.InputStream in = rs1.getBinaryStream("entity_image");
OutputStream f = new FileOutputStream(file);
int c=0;
while((c=in.read())>-1)
{
//System.out.println(c);
f.write(c);
}
byte[] imageBytes = new byte[(int)file.length()];
in.read(imageBytes, 0, imageBytes.length);
in.close();
String imageStr = encodeImage(imageBytes);//method that returns the encoded base64 String.
byte[] imageByteArray = decodeImage(imgstring);//method returning byte []
f.write(imageByteArray);//writing the decoded image to the file
新图片文件说它在打开时包含错误?
是否有其他方法可用于从配置单元中获取图像数据?
我使用getbytes()
方法进行了检查,但它说该方法不受支持。