在Java中管理二进制数据的最佳类型是什么?
我从网上获得一些文档,其中许多是二进制文件(可执行文件,PDF等)。在Java中,保存二进制数据直到将其保存在数据库中的正确类型是什么?我可以为此使用字符串吗?
我从网上获得一些文档,其中许多是二进制文件(可执行文件,PDF等)。在Java中,保存二进制数据直到将其保存在数据库中的正确类型是什么?我可以为此使用字符串吗?
使用字节数组(byte[])或 InputStream(例如 ByteArrayInputStream)。Java 字符串不是通用二进制数据的良好容器。
Apache库commons-io有一些很好的实用程序类来处理字节和流。
例如 IOUtils.toByteArray(InputStream)
ByteBuffer是作为Java NIO的一部分引入的,在Java 4(1.4)及更高版本中可用。在特殊情况下,与使用 byte[] 相比,它具有性能优势。它还具有一些有用的便利方法。不过,我仍然通常使用byte[],因为它更广为人知,在API中更常见,并且几乎总是表现得足够好。