zoukankan      html  css  js  c++  java
  • java代码导出数据到Excel、js导出数据到Excel(三)

     jsp内容忽略,仅写个出发按钮:

             <button style=" 100px" onclick="expertExcel()" >JS导出Excel</button>&nbsp;&nbsp;&nbsp;
            <button style=" 100px" onclick="expertWord()" >JS导出Word</button>&nbsp;&nbsp;&nbsp;
            <button style=" 100px" onclick="getDataToExcel2()" >代码导出</button>
             
          <div class ='main' id='main'></div>
          <div class ='bottom' id='buttom12'>
          </div>
          
         </div>
      </body>
    </html>
    <script type="text/javascript"> 
      

      
      //后台弹出框式导出数据到Excel
      function getDataToExcel2(){
       var sssj = document.getElementById("time_ctrol").value;
       var xtmc = document.getElementById("st").value;
        
       xtmc = encodeURI(encodeURI(xtmc));
       var requestURL = "./DataToExcel.jsp?type=getDataToExcel&sssj=" + sssj + "&xtmc=" + xtmc;
       window.open(requestURL);
      }
      
      function createXMLHttpRequest(){
         if (window.ActiveXObject) {
        XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
       } else {
        XMLhttpObject = new XMLHttpRequest();
       }
         return XMLhttpObject;
      }
     
      
      
        

     


     </script>
     //js导出EXCEL
     <script type="text/javascript">
       function expertExcel(){
        var oXL = new ActiveXObject("Excel.Application"); 
          var oWB = oXL.Workbooks.Add(); 
          var oSheet = oWB.ActiveSheet; 
          var sel=document.body.createTextRange();
          sel.moveToElementText(main);
          sel.select();
          sel.execCommand("Copy");
          oSheet.Paste();
          oXL.Visible = true;
       }
       


     
     
    代码导出页面,抄袭来自csdn:
     <% 
      //这样写不太科学,因为filename一般不会写死
        //response.setHeader("Content-Disposition", "attachment;filename= aa.xls");
     //response.setContentType("application/vnd.ms-excel");  
    %>
    <%@ page language="java" import="java.util.*" contentType="application/vnd.ms-excel;charset=UTF-8" pageEncoding="UTF-8"%>
    <%@ page import="java.net.URLDecoder"%>
    <%@ page import="nariis.pi3000.ythTjFx.sbjk.pageHelp.*"%>
    <%@ page import="org.apache.poi.hssf.usermodel.*"%>
    <%@ page import="java.util.ArrayList"%>
    <%@ page import="nariis.pi3000.ythTjFx.sbjk.entity.DataEntity"%>
    <%
     String type = request.getParameter("type");
     String sssj = request.getParameter("sssj");
     String xtmc = request.getParameter("xtmc");
         xtmc = URLDecoder.decode(xtmc,"UTF-8");
     
     System.out.print(type);
     System.out.print(sssj);
     System.out.print(xtmc);
     
     String path = "Excel";  //注意,千万别写中文
     
     response.setHeader("Content-Disposition", "attachment;filename=" + path +".xls");
     
     if("getDataToExcel".equals(type)){
      PageService pageService = new PageService();
      ArrayList<DataEntity>  list = pageService.getAllDataToExcel2(sssj);
      
      // 第一步,创建一个webbook,对应一个Excel文件   
            HSSFWorkbook wb = new HSSFWorkbook();  
           // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet   
           HSSFSheet sheet = wb.createSheet("学生表一");  
           // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short   
           HSSFRow row = sheet.createRow((int) 0);  
            // 第四步,创建单元格,并设置值表头 设置表头居中   
            HSSFCellStyle style = wb.createCellStyle();  
            style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式   
      
            HSSFCell cell = row.createCell((short) 0);  
            
            cell.setCellValue("SX");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 1);  
            cell.setCellValue("DWMC");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 2);  
            cell.setCellValue("SFGYPP");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 3);  
            cell.setCellValue("SJKLX");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 4); 
            cell.setCellValue("JSJSL");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 5); 
            cell.setCellValue("SSSJ");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 6); 
            cell.setCellValue("XTMC");  
            cell.setCellStyle(style);  
            cell = row.createCell((short) 7); 
            
            for (int i = 0; i < list.size(); i++)  
            {  
              int j =0;
                 row = sheet.createRow((int) i + 1);  
                 DataEntity dataEntity = (DataEntity) list.get(i);  
                 // 第四步,创建单元格,并设置值   
                 row.createCell((short) j++).setCellValue(dataEntity.getSx());  
                 row.createCell((short) j++).setCellValue(dataEntity.getDWMC());
                 row.createCell((short) j++).setCellValue(dataEntity.getSfgypp());
                 row.createCell((short) j++).setCellValue(dataEntity.getSjklx());
                 row.createCell((short) j++).setCellValue(dataEntity.getJsjsl());
                 row.createCell((short) j++).setCellValue(dataEntity.getSssj());
                 row.createCell((short) j++).setCellValue(dataEntity.getXtmc());
            }
            
            // 第六步,将文件存到指定位置   
            try  
             {  
            //   OutputStream outp=response.getOutputStream();
                 ServletOutputStream outp =  response.getOutputStream();
        outp.flush();
        wb.write(outp);  
        outp.close();
        response.flushBuffer();
        out.clear();
        out=pageContext.pushBody(); 
              }  
             catch (Exception e)  
             {  
                 e.printStackTrace();  
             } 
     }
     
     
     %>
     
  • 相关阅读:
    C++学习9 this指针详解
    福建省第八届 Triangles
    UVA 11584 Partitioning by Palindromes
    POJ 2752 Seek the Name, Seek the Fame
    UVA 11437 Triangle Fun
    UVA 11488 Hyper Prefix Sets (字典树)
    HDU 2988 Dark roads(kruskal模板题)
    HDU 1385 Minimum Transport Cost
    HDU 2112 HDU Today
    HDU 1548 A strange lift(最短路&&bfs)
  • 原文地址:https://www.cnblogs.com/chen1-kerr/p/6900081.html
Copyright © 2011-2022 走看看