-1
HSSFWorkbook wb = new HSSFWorkbook();
byte[] BinaryFileBytes = wb.getBytes();

使用此代码,我可以获得一个字节数组对象并将其写入数据库。但是我不能导出它。是否生成到本地导入数据库?请。

4

1 回答 1

1

您没有正确写出文件。从getBytes() javadocs

方法 getBytes - 仅获取 XLS 文件的 HSSF 部分的字节。使用它自己构建一个 POI POIFSFileSystem。

如果要获取整个文件的字节,则应该执行以下操作:

HSSFWorkbook wb = new HSSFWorkbook();
// Populate

ByteArrayOutputStream baos = new ByteArrayOutputStream();
wb.write(baos);
byte[] data = baos.toByteArray();

或者,查看您的数据库是否提供了用于将数据写入 blob 存储的 OutputStream,如果是,则wb.write(out)直接将其传递给调用

于 2013-10-14T09:33:16.360 回答