zoukankan      html  css  js  c++  java
  • JAVA 读取pdf文件

    第一个路口action 

    /*
     * wuhan syspro author zhangrui 2010/08/23
    */
    package jp.co.syspro.poo.action;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public class PrintPdfAction extends Action{
    	public ActionForward execute(ActionMapping mapping, ActionForm form,
    	HttpServletRequest request, HttpServletResponse response)
    			throws Exception {
    		PdfExport pdf = new PdfExport();
    		String id=request.getParameter("id");
    		pdf.make(request,response,id);
    		return null;
    		}
    }
    

    进行输出方法

    /*
     * author syspro wuhan zhangrui 2010/8/20
    */
    package jp.co.syspro.poo.action;
    
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.ArrayList;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import com.lowagie.text.pdf.PdfPageEventHelper;
    import com.lowagie.text.pdf.BaseFont;   
    import com.lowagie.text.pdf.PdfTemplate;   
    import jp.co.syspro.poo.dao.System3Dao;
    
    public class PdfExport extends PdfPageEventHelper {
    	
    	    public PdfTemplate tpl;
    	    
    	    public BaseFont bf;
    	    
    	    public void make(HttpServletRequest request, HttpServletResponse response,String id) throws Exception{  
    	    	ArrayList f_file2=System3Dao.getInstance().getFile(id);
    	    	InputStream f_file=(InputStream)f_file2.get(0);
    	    	Integer f_size=Integer.parseInt(f_file2.get(1).toString());
    	    	response.reset();
    			response.setContentType("application/pdf");
    			OutputStream output = response.getOutputStream();
    			InputStream fis = f_file;
    			byte[] b = new byte[f_size];
    			int i = 0;
    			while ((i = fis.read(b)) > 0) {
    				output.write(b, 0, i);
    			}
    			output.flush();
    	    } 
    }
    
  • 相关阅读:
    extjs grid renderer用法
    EventListenerList举例
    SQL语句的执行原理
    WPF操作邮箱,发送邮件
    wpf中DataGrid行色变换
    JS获取浏览器和荧屏分辨率
    将数据库的二进制字节转换成图片
    字符串操作类
    ios推送基于YII第三方组件的类库
    数组操作类
  • 原文地址:https://www.cnblogs.com/sunxun/p/4444035.html
Copyright © 2011-2022 走看看