【发布时间】:2014-06-20 22:59:55
【问题描述】:
我有一个非常有趣的问题,我正在将 jpg 图像转换为 Java 中的字节数组,如下所示:
> public byte[] toBytes(String file) throws IOException {
File img = new File(file);
BufferedImage image = ImageIO.read(img);
WritableRaster r = image.getRaster();
DataBufferByte data = (DataBufferByte) r.getDataBuffer();
return data.getData();
}
这显然只是系统的一部分,但请相信我的话^_^: 这个方法返回一个字节数组,但是 - 当我给它一个大小约为 20,000 字节的 .jpg 文件时(Linux - 右键单击图像 -> 属性 -> 大小显示为大约 20 000 字节),获得的字节数组有长度超过 345 000,即 345 000 字节(所有这些都初始化为一些值,而不仅仅是 0-s)。你们知道为什么会这样吗?
【问题讨论】:
-
如果您使用的是 linux 并使用右键单击查看图像的大小,那么对不起,伙计,但我不会相信您的话。跨度>
-
Jpeg 被压缩了......所以......
-
在Linux上使用图形界面有什么问题?????????你听说过 - Ubuntu 吗?它是操作系统,显然 - 它具有图形(实际上非常好)界面,就像许多其他 Linux 发行版一样。