struts,取得oracle存放blob数据保存为文件,在线等

tinlan 2004-03-17 10:38:57
在upload文件到oracle的blob字段,现在想把它取回,既是通过获得输入流转回成文件,在jsp中弹出窗口保存该文件。

我搜索到类似的帖子,可是都不成功。
例如:转贴
<%@page import="java.io.*"%>
<%
String pathsavefile;//要下载的文件
String fileName;//保存窗口中显示的文件名
fileName=response.encodeURL(new String(fileName.getBytes(),"ISO8859_1"));//
response.reset();
response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition", "attachment; filename=\""+fileName+"\"");
ServletOutputStream out = response.getOutputStream();
InputStream inStream=new FileInputStream(pathsavefile);
//循环取出流中的数据
byte[] b = new byte[1024];
int len;
while((len=inStream.read(b)) >0)
out.write(b,0,len);
}
out.close();
inStream.close();
}
catch (Exception e)
{
System.out.println(e);
}
%>

这里是从文件中获得,我想从blob中的流转换成文件
String filename="测试.doc"
InputStream inStream = null;
//读出流用getBinaryStream()方法。
inStream = rs.getBlob("dfile").getBinaryStream();

文件名已经指定。

大家帮忙看看,弄好马上给分。

...全文
128 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mzlibo 2004-09-24
  • 打赏
  • 举报
回复
Clob clob = rs.getClob("dfile");
if(clob!=null){
String contents = clob.getSubString(1L, (int)clob.length());
}

然后写文件啊
hsdxhc 2004-09-23
  • 打赏
  • 举报
回复
使用Oracle数据库为什么不使用Oracle的包呢?

import oracle.jdbc.*
import oracle.sql.*

里面提供的方法更具有针对性一些。
tinlan 2004-09-23
  • 打赏
  • 举报
回复
dddd

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧