1.首先獲取檔案模板存在的位置和臨時檔案存在的位置
2.建立流操作
3.進行讀取和寫出的操作 關閉流
注意事項:a.windows環境和linux環境有差異;b.如有流沒有正常關閉複製生成的檔案會出現破損無法開啟現象
//處理不同作業系統環境下對路徑、路徑+檔案的獲取(可抽成方法)
public string enviorment(string template,string tablename)
//linux
if("/".equals(file.separator))
return index ;
}public file enviorment1(string template)
//linux
if("/".equals(file.separator))
return index ;
}
//pdf核心方法
string filenamepdf = null;//臨時表名
string pdfpath = "";
//獲取模板
string filename = enviorment(template1,tempname);
//建立pdf讀入流,
pdfreader reader = new pdfreader(filename);
bytearrayoutputstream bos = new bytearrayoutputstream ();
//根據pdf讀入流建立pdfstamper,用來生成新的pdf
pdfstamper ps = new pdfstamper(reader,bos);
acrofields s = ps.getacrofields();
s.setfield("pdf中的**中定義的值","查詢出的值");
ps.setformflattening(true);
ps.close();
pdfpath = enviorment(template2 ,filenamepdf+".pdf" );
fileoutputstream fos = new fileoutputstream(pdfpath );
fos.write(bos.tobytearray());
fos.close();
bos.close();
reader.close();
return pdfpath;
}//程式入口
string aa = pdf(request,temptname, list)
以上操作已經完成生成pdf報表 java用itext 做pdf報表
1.準備工作 com.itextpdf itextpdf 5.5.8 2.簡易操作 先建立乙個文件 document document new document pagesize.a4,50,50,50,50 用a4紙建立了乙個文件,頁邊距都是50 建立乙個輸出流 pdfwriter writer ...
如何在潤幹報表中製作分組填報表
同樣地,我們以 demo 示例庫中的雇員表資訊維護為例,在資料填報頁面,需要實現以下效果 1 雇員資訊按照地區分組顯示 2 雇員基本資訊可進行修改 效果圖如下圖所示 在製作分組填報表之前,我們先來看一下它的設計原理。原理說明 分組填報表中有兩個維度 分組維度和明細維度,如何處理兩者之間的邏輯關係是重...
解決 Jasper 等報表工具製作報表中的幾個難題
在製作業務報表時,經常會遇到一些單獨依靠報表工具難以解決的問題。本文將針對幾個 jasper 報表工具使用者在國外論壇中提出的現實問題,介紹如何用集算器 spl 語言加以解決的方案。這裡的解決方案其實並不僅適用於 jasper,對其它報表工具也同樣適用。資料檔案 data.csv 儲存著某賬戶各期資...