调用Simple toBytes()确实会生成字节但exel会抛出警告.
丢失文档信息
谷歌搜索给了我这个链接,看着Javadocs的工作表和POI HOW-TO说类似的东西.基本上我不能Bytes没有丢失一些信息,应该使用该write方法.
虽然写入工作正常但我真的需要发送字节.有什么方法可以做到吗?这是得到字节没有得到任何警告.
Jör*_*ann 77
正如该邮件列表帖子所说
调用
HSSFWorkbook.getBytes()不会返回重构完整Excel文件所需的所有数据.
您可以将write方法与a一起使用ByteArrayOutputStream来获取字节数组.
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
workbook.write(bos);
} finally {
bos.close();
}
byte[] bytes = bos.toByteArray();
Run Code Online (Sandbox Code Playgroud)
(close对于a来说ByteArrayOutputStream,这个调用并不是真正需要的,但是如果以后将其改为不同类型的流,则无论如何都要包含它.)
Gag*_*arr 16
怎么样:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
workbook.write(baos);
byte[] xls = baos.toByteArray();
Run Code Online (Sandbox Code Playgroud)
为了获得完整的excel文件,您必须调用write(OutputStream)方法.如果你想要那个字节,只需给出一个ByteArrayOutputStream
| 归档时间: |
|
| 查看次数: |
50462 次 |
| 最近记录: |