从sybase数据库里读大二进制数,只能显示32K啊,我的图片有400多K大 if(rs.next()) {
InputStream in = rs.getBinaryStream(1);
byte[] buf=new byte[1024];
while((len= in.read(buf))!=-1) {
response.getOutputStream().write(buf, 0, len);
}
response.getOutputStream().close();
in.close();
}
只能显示一小段,看了下in的长度只有32k
怎么办,请高手帮忙
InputStream in = rs.getBinaryStream(1);
byte[] buf=new byte[1024];
while((len= in.read(buf))!=-1) {
response.getOutputStream().write(buf, 0, len);
}
response.getOutputStream().close();
in.close();
}
只能显示一小段,看了下in的长度只有32k
怎么办,请高手帮忙
解决方案 »
- 在163jsp 下发布项目的一个问题
- 急....Java调用C#写的Webservice求解服务器未能识别HTTP头SOAPAction的值:http://tempuri.org/getS
- 我在本地测试通过,为什么发布到服务器上就报错呢,报的是拒绝访问,请各位帮忙看下!!!
- 这种效果查询语句怎么写??
- jsp页面的参数传递和接收问题
- [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 ??求助啊
- 一个数据库连接的例子,好象有点问题
- 关于日期的简单问题
- jsp页面框架中的jsp文件如何接收传给父窗口的参数?
- 请问,考高程怎么报名呀,都考什么内容,谢谢! 考出来有用吗?
- 在servlet中怎么用application?
- struts-config.xml中<action>下的validate属性如果没有设置,默认值是true还是false?
你在获取你的Connection之后,执行'set textsize 5120000',表示最大可接受5M的blob缓冲。
这样再执行你上述代码就OK了。
SELECTBLOB images INTO :lb_image FROM table WHERE name =:ls_name;
j = len(lb_image)
if j<= 0 or isnull(j) then
messagebox("提示","未设置图片")
close(this)
else
p_1. setpicture(lb_image)
end if而且sybase没有blob的数据类型,在sybase中只能用image存取,用getBlob()报错,用getColumnTypeName()得出类型是LONGVARBINARY想不明白啊
不能帮助楼主了!!
只能帮楼主顶!!