当前位置: 技术问答>java相关
请教大家两个数据库编程问题:
来源: 互联网 发布时间:2015-11-13
本文导语: 1、表单提交的数据存入数据库时变成了“?”,不知如何处理的才能正常。 查了些资料,那资料说改客户端操作系统某些属性,试过,可以。但现实中这显然不可行。 2、如何把二进制文件读出数据库的,如Word等,...
1、表单提交的数据存入数据库时变成了“?”,不知如何处理的才能正常。
查了些资料,那资料说改客户端操作系统某些属性,试过,可以。但现实中这显然不可行。
2、如何把二进制文件读出数据库的,如Word等,然后在浏览器中显示。
查了些资料,那资料说改客户端操作系统某些属性,试过,可以。但现实中这显然不可行。
2、如何把二进制文件读出数据库的,如Word等,然后在浏览器中显示。
|
1.估计是典型的中文问题,用String name = new String( req.getParameter( "name" ).getBytes( "ISO8859_1" ), "GBK" );试一下看看。
2.用rs.getBytes(int i);得到字节数组,通过流的形式发回浏览器。
name设置为.doc,客户那如果有word就直接打开了,要不就显示个文件下载对话框。
private void writeStream( HttpServletResponse res, byte[] file, String name ) throws IOException
{
res.setContentType( "application/x-msdownload" );
res.setHeader( "Content-Disposition", "inline; filename="+name );
ServletOutputStream os = res.getOutputStream();
os.write( file );
os.flush();
os.close();
}
2.用rs.getBytes(int i);得到字节数组,通过流的形式发回浏览器。
name设置为.doc,客户那如果有word就直接打开了,要不就显示个文件下载对话框。
private void writeStream( HttpServletResponse res, byte[] file, String name ) throws IOException
{
res.setContentType( "application/x-msdownload" );
res.setHeader( "Content-Disposition", "inline; filename="+name );
ServletOutputStream os = res.getOutputStream();
os.write( file );
os.flush();
os.close();
}