gpt4 book ai didi

java - 如何在 Java 中将 ByteBuffer 转换为 FileInputStream?

转载 作者:行者123 更新时间:2023-11-29 03:11:42 25 4
gpt4 key购买 nike

我正在尝试将 xls 表导入 DB,因为当我上传文件时,上传的文件是 ByteBuffer 格式,我编写了一个读作 FileInputStream 的逻辑。

现在我如何将这个 ByteBuffer 转换为 FileInputStream

这是我的代码

        ByteBuffer fileBytes = (ByteBuffer) context.get("uploadedFile");
String encoding = System.getProperty("file.encoding");
String filename = Charset.forName(encoding).decode(fileBytes).toString();
filename = filename.replaceAll("\\r", "");

我尝试使用 ByteArrayInputStream() 对其进行转换,但看起来它不起作用!

最佳答案

  1. 更改您的逻辑以使用 InputStream 而不是 FileInputStream。您不关心输入来自何处。
  2. 使用以下代码:

    ByteArrayInputStream bais = new ByteArrayInputStream(buffer.array(), buffer.position(), buffer.limit());

并将 bais 传递给您现有的方法。

关于java - 如何在 Java 中将 ByteBuffer 转换为 FileInputStream?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29004236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com