为什么下载得从数据库里面的读出的doc(二进制形式)文件得到的却是jsp文件?怎样才能使下载的时候得到doc文件?

解决方案 »

  1.   

    补充一下:
    下载得到的jsp文件也是二进制形式的,如果将后缀名改为doc这样
    也可以正常的显示文件,怎样才能使他下载的时候得到的就是doc文件呢?
    请个高手指点!!
      

  2.   

    获得数据库里的文件的代码:<%
    int id=Integer.parseInt(request.getParameter("id"));
    String sql = " SELECT file FROM ziliao WHERE id="+id;
    PreparedStatement pstmt = null;
    DataBaseConnection dbc = null;
    dbc = new DataBaseConnection();

    try {
    pstmt = dbc.getConnection().prepareStatement(sql);
    ResultSet rs = pstmt.executeQuery();
    if (rs.next()) {
    Blob b = rs.getBlob("file");
    long size = b.length();
    byte[] bs = b.getBytes(1, (int) size);
    response.setContentType("application/msword");
    OutputStream outs = response.getOutputStream();
    outs.write(bs);
    outs.flush();
    rs.close();
    } else {
    rs.close();
    }
    } finally {
    pstmt.close();
    dbc.close();
    }
    %>通过链接:<a href="one_zl.jsp?id=${list4.id }">附件</a>来下载!!