当前位置: 首页 > 面试题库 >

如何将POI HSSFWorkbook转换为字节?

奚修伟
2023-03-14
问题内容

调用Simple
toBytes()会产生字节,但是exel会抛出警告。

遗失文件资料

仔细搜索一下,给了我这个链接,并查看了工作表的Javadocs和POI
HOW-TO的类似说法。基本上,我不能不Bytes丢失一些信息,而应该使用该write方法。

虽然写入确实可以正常工作,但我确实需要将字节发送过来。有什么办法可以做到吗?那就是得到字节而没有任何警告。


问题答案:

正如邮件列表中所说的

调用HSSFWorkbook.getBytes()不会返回重建一个完整的Excel文件所需的所有数据。

您可以将write方法与一起使用ByteArrayOutputStream以获取字节数组。

ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
    workbook.write(bos);
} finally {
    bos.close();
}
byte[] bytes = bos.toByteArray();

(对于而言,close实际上并不需要该调用ByteArrayOutputStream,但是,恕我直言,无论如何将其包括在内都是很好的样式,以防以后将其更改为其他类型的流。)



 类似资料:
  • 问题内容: 我使用以下代码将密钥转换为字节 现在如何从中获取密钥?我试过了: 我收到以下错误: 问题答案: 这应该工作

  • 我遇到了将字节字符串转换为字节数组的强制转换问题。 我有一个字符串[B@1a758cb。也就是Base64加密的String的主String"Gunjan"。这里的解密我想把加密的字节串转换成字节[]。 但是String.get字节[]不适合我。String.getBytes[]给出字节String的字节数。 我该怎么做??我是否必须迭代字节字符串中的每个字符并将其转换为字节[]?? 编辑 我使用

  • 问题内容: //或将多部分文件保存到数据库的任何其他解决方案。我尝试用这种方式,但出现错误。 问题答案:

  • 我试图通过API发送数据,但得到了类型错误:无法将字节转换为str。我理解这意味着我需要将部分代码转换为字节,但我不确定如何执行。我尝试在前面添加b或使用字节(“数据”),但可能将它们放在了错误的区域。 这是问题行: 我不确定什么和如何转换为字节。

  • 问题内容: 如何在python中将字节字符串转换为int? 这样说: 我想出了一个聪明/愚蠢的方法: 我知道必须有内置的东西或在标准库中可以更简单地执行此操作… 这与转换可以使用int(xxx,16)的十六进制数字字符串不同,但是我想转换一个实际字节值的字符串。 更新: 我有点喜欢James的回答,因为它不需要导入另一个模块,但是Greg的方法更快: 我的骇客方法: 进一步更新: 有人在评论中问导

  • 有没有办法将Java转换为(而不是装箱的)? 在尝试此过程中: 我得到了不同的输出。无法显示第一个输出,因为它是gzip字符串。 第二个是地址。我做错什么了吗?我需要一个中的结果来将其馈送到gzip解压缩器,如下所示。