相关疑难解决方法(0)

如何将InputStream转换为DataHandler?

我正在研究一个java Web应用程序,其中文件将存储在数据库中.最初我们通过调用getBytes结果集来检索DB中已有的文件:

byte[] bytes = resultSet.getBytes(1);
...
Run Code Online (Sandbox Code Playgroud)

然后DataHandler使用明显的构造函数将此字节数组转换为a :

dataHandler=new DataHandler(bytes,"application/octet-stream");
Run Code Online (Sandbox Code Playgroud)

这很有用,直到我们开始尝试存储和检索更大的文件.将整个文件内容转储到一个字节数组中然后构建一个DataHandler只需要太多内存.

我的直接想法是在数据库中检索数据流,getBinaryStream并以某种方式将其InputStream转换DataHandler为内存有效的方式.不幸的是,似乎没有直接的方法将一个转换InputStream成一个DataHandler.另一个想法我一直在玩从读取数据块InputStream,并将其写入OutputStreamDataHandler.但是...... 当我打电话时,我无法找到一种方法来创建一个DataHandler返回非空的"空" ...OutputStreamgetOutputStream

有没有人这样做过?我很感激你能给我的任何帮助或者正确的方向.

java inputstream outputstream

23
推荐指数
3
解决办法
7万
查看次数

标签 统计

inputstream ×1

java ×1

outputstream ×1