From d61326581ec74e17bff7d7a71c0137e6693a0fc3 Mon Sep 17 00:00:00 2001
From: LiJun <LiJun@192.168.10.10>
Date: 星期一, 22 十月 2018 09:50:16 +0800
Subject: [PATCH] 表格通用导出修复

---
 gx_tieta/src/com/fgkj/servlets/ExportTableServlet.java |   22 ++++++++++++++++------
 1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/gx_tieta/src/com/fgkj/servlets/ExportTableServlet.java b/gx_tieta/src/com/fgkj/servlets/ExportTableServlet.java
index c255d3b..93dcf64 100644
--- a/gx_tieta/src/com/fgkj/servlets/ExportTableServlet.java
+++ b/gx_tieta/src/com/fgkj/servlets/ExportTableServlet.java
@@ -136,8 +136,8 @@
 		String exp_thead_str = req.getParameter("exp_thead");
 		String exp_tbody_str = req.getParameter("exp_tbody");
 		
-		String exp_page_break = req.getParameter("exp_page_break");
-		String exp_data_break = req.getParameter("exp_data_break");
+		String exp_page_break = "\\"+req.getParameter("exp_page_break");
+		String exp_data_break = "\\"+req.getParameter("exp_data_break");
 		
 		String exp_page_names_str =  req.getParameter("exp_page_names");
 		
@@ -160,18 +160,20 @@
 				exp_page_names = exp_page_names_str.split(exp_page_break);			//鍒嗗壊宸ヤ綔绨跨殑鍚嶇О
 				
 				String[] exp_thead_sheets = exp_thead_str.split(exp_page_break);
-				String[] exp_tbody_sheets = exp_tbody_str.split(exp_page_break);		
+				String[] exp_tbody_sheets = exp_tbody_str.split(exp_page_break);	
+				
 				
 				for (int i = 0; i < exp_page_names.length && exp_page_names.length >= exp_thead_sheets.length; i++) {
-					HSSFSheet sheet = workbook.createSheet(excelTitle);
+					HSSFSheet sheet = workbook.createSheet(exp_page_names[i]);
 					String[] exp_thead = exp_thead_sheets[i].split(exp_data_break);
 					String[] exp_tbody = exp_tbody_sheets[i].split(exp_data_break);
 					
 					int maxColNum = exp_thead.length;			//鏈�澶у垪鏁�
 					int nowRowNum = 0;							//褰撳墠琛�
 					int nowColNum = 0;							//褰撳墠鍒�
+					HSSFRow row = null;
 					for(int j=0;j <= exp_tbody.length;j++){
-						HSSFRow row = null;
+						//System.out.println("j="+j+"\t nowRowNum="+nowRowNum);
 						if(j == 0){
 							row = sheet.createRow(nowRowNum++); 
 							for(int k=0;k<exp_thead.length;k++){	
@@ -187,6 +189,7 @@
 						}
 						HSSFCell cell = row.createCell(nowColNum++);
 						HSSFRichTextString text = new HSSFRichTextString(exp_tbody[j-1]);
+						//HSSFRichTextString text = new HSSFRichTextString("*****");
 						//System.out.print(text+"\t");
 						cell.setCellValue(text);						
 					}					
@@ -197,6 +200,8 @@
 					+ new String(excelName.getBytes("gb2312"), "ISO8859-1")
 					+ ".xls");
 			OutputStream out = resp.getOutputStream();
+			workbook.write(out);
+			out.close();
 		} catch (UnsupportedEncodingException e) {
 			e.printStackTrace();
 		} catch (IOException e) {
@@ -418,5 +423,10 @@
        
 	}
 	
-	
+	public static void main(String[] args) {
+		String ths = "h1&h2&h3&h4$xh1&xh2&xh3&xh4";
+		System.out.println(ths.indexOf("$"));
+		String[] sheets = ths.split("\\&");
+		System.out.println(sheets.length);
+	}
 }

--
Gitblit v1.9.1