﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-爪哇一角-文章分类-excel word + macro</title><link>http://www.blogjava.net/ocean07000814/category/40164.html</link><description>共同探讨STRUTS#HIBERNATE#SPRING#EJB等技术</description><language>zh-cn</language><lastBuildDate>Mon, 28 Feb 2011 22:02:16 GMT</lastBuildDate><pubDate>Mon, 28 Feb 2011 22:02:16 GMT</pubDate><ttl>60</ttl><item><title>RtfTemplate 读取word模板生成文件</title><link>http://www.blogjava.net/ocean07000814/articles/345110.html</link><dc:creator>非洲小白脸</dc:creator><author>非洲小白脸</author><pubDate>Fri, 25 Feb 2011 03:40:00 GMT</pubDate><guid>http://www.blogjava.net/ocean07000814/articles/345110.html</guid><wfw:comment>http://www.blogjava.net/ocean07000814/comments/345110.html</wfw:comment><comments>http://www.blogjava.net/ocean07000814/articles/345110.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ocean07000814/comments/commentRss/345110.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ocean07000814/services/trackbacks/345110.html</trackback:ping><description><![CDATA[<p><br />
try {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.reset();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.setContentType("txt/rtf; charset=GBK");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String fileName = "XXXX.rtf";<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.pageWrapper.response.addHeader("Content-Disposition", "attachment; filename=" + fileName);</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //生成word<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String rtfSource =&nbsp; ("D://wwww.rtf") ;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RTFTemplateBuilder builder = RTFTemplateBuilder.newRTFTemplateBuilder()</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RTFTemplate rtfTemplate = builder.newRTFTemplate();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rtfTemplate.setTemplate(new File(rtfSource));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;对于模板中的变量赋值<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rtfTemplate.put("time1","变量1");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PrintWriter writer = response.getWriter();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rtfTemplate.merge(writer);<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; writer.flush();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.close();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception e) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e.printStackTrace();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw e;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<br />
&nbsp;模板文件：<br />
&nbsp;
<table style="border-bottom: medium none; border-left: medium none; width: 432pt; border-collapse: collapse; margin-left: -3.6pt; border-top: medium none; border-right: medium none" class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="576">
    <tbody>
        <tr style="height: 21.6pt">
            <td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0mm; padding-left: 5.4pt; width: 90pt; padding-right: 5.4pt; height: 21.6pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="120">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间1</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 135pt; padding-right: 5.4pt; height: 21.6pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="180">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">$time1</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 81pt; padding-right: 5.4pt; height: 21.6pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="108">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间2</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 126pt; padding-right: 5.4pt; height: 21.6pt; border-top: windowtext 1pt solid; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="168"><font face="宋体"></font></td>
        </tr>
        <tr style="height: 23.35pt">
            <td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0mm; padding-left: 5.4pt; width: 90pt; padding-right: 5.4pt; height: 23.35pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="120">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间3</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 135pt; padding-right: 5.4pt; height: 23.35pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="180">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">$time3</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 81pt; padding-right: 5.4pt; height: 23.35pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="108">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间4</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 126pt; padding-right: 5.4pt; height: 23.35pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="168">
            <p style="text-align: center" class="MsoNormal" align="center">&nbsp;</p>
            </td>
        </tr>
        <tr style="height: 22.95pt">
            <td style="border-bottom: windowtext 1pt solid; border-left: windowtext 1pt solid; padding-bottom: 0mm; padding-left: 5.4pt; width: 90pt; padding-right: 5.4pt; height: 22.95pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="120">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间5</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 135pt; padding-right: 5.4pt; height: 22.95pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="180">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">$time5</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 81pt; padding-right: 5.4pt; height: 22.95pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="108">
            <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; color: black; font-size: 12pt">时间6</span></p>
            </td>
            <td style="border-bottom: windowtext 1pt solid; border-left: medium none; padding-bottom: 0mm; padding-left: 5.4pt; width: 126pt; padding-right: 5.4pt; height: 22.95pt; border-top: medium none; border-right: windowtext 1pt solid; padding-top: 0mm" valign="top" width="168">
            <p style="text-align: center" class="MsoNormal" align="center"></p>
            </td>
        </tr>
    </tbody>
</table>
<img src ="http://www.blogjava.net/ocean07000814/aggbug/345110.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ocean07000814/" target="_blank">非洲小白脸</a> 2011-02-25 11:40 <a href="http://www.blogjava.net/ocean07000814/articles/345110.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>POI通过读取Excel模板生成Excel文件</title><link>http://www.blogjava.net/ocean07000814/articles/344865.html</link><dc:creator>非洲小白脸</dc:creator><author>非洲小白脸</author><pubDate>Tue, 22 Feb 2011 09:48:00 GMT</pubDate><guid>http://www.blogjava.net/ocean07000814/articles/344865.html</guid><wfw:comment>http://www.blogjava.net/ocean07000814/comments/344865.html</wfw:comment><comments>http://www.blogjava.net/ocean07000814/articles/344865.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ocean07000814/comments/commentRss/344865.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ocean07000814/services/trackbacks/344865.html</trackback:ping><description><![CDATA[<li><span><span class="comment">/** </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;导出 </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;mapping </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;form </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;request </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;response </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return </span>&nbsp;</span>
<li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;ActionForward&nbsp;export(ActionMapping&nbsp;mapping,&nbsp;ActionForm&nbsp;form, &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpServletRequest&nbsp;request,&nbsp;HttpServletResponse&nbsp;response)&nbsp;{ &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;checkBoxValueList&nbsp;=&nbsp;request.getParameter(</span><span class="string">"ckv"</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>(!CommonUtil.isNotNullorEmtry(checkBoxValueList))&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">this</span><span>.saveMessages(request,&nbsp;</span><span class="string">"export.fail"</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;mapping.findForward(</span><span class="string">"export.fail"</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&lt;Order&gt;&nbsp;listOrder&nbsp;=&nbsp;orderService.exportOrderList(checkBoxValueList); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span class="comment">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SimpleDateFormat&nbsp;sf&nbsp;=&nbsp;new&nbsp;SimpleDateFormat("yyyyMMddhhmm"); </span><span>&nbsp;&nbsp;</span></span>
<li><span class="comment">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calendar&nbsp;calendar&nbsp;=&nbsp;Calendar.getInstance(); </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ServletOutputStream&nbsp;os&nbsp;=&nbsp;response.getOutputStream();&nbsp;</span><span class="comment">//获得输出流 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;response.reset();&nbsp;&nbsp;&nbsp;</span><span class="comment">//清空输出流 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;fileName&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;String(</span><span class="string">"订单列表"</span><span>.getBytes(</span><span class="string">"gb2312"</span><span>),&nbsp;</span><span class="string">"ISO8859-1"</span><span>)&nbsp;+</span><span class="string">".xls"</span><span>; &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;response.setHeader(</span><span class="string">"Content-disposition"</span><span>,&nbsp;</span><span class="string">"attachment;&nbsp;filename="</span><span>+&nbsp;fileName);&nbsp;</span><span class="comment">//设定输出文件头 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;response.setContentType(</span><span class="string">"application/msexcel"</span><span>);&nbsp;</span><span class="comment">//定义输出类型 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;filePath&nbsp;=&nbsp;request.getSession().getServletContext().getRealPath(</span><span class="string">"/excel/model/order.xls"</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFWorkbook&nbsp;workbook&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;HSSFWorkbook(</span><span class="keyword">new</span><span>&nbsp;FileInputStream(filePath));&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//读取excel模板 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFSheet&nbsp;sheet&nbsp;=&nbsp;workbook.getSheetAt(</span><span class="number">0</span><span>);&nbsp;&nbsp;&nbsp;</span><span class="comment">//读取第一个工作簿 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;row; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFCell&nbsp;cell&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">int</span><span>&nbsp;rownum&nbsp;=&nbsp;</span><span class="number">3</span><span>;&nbsp;</span><span class="comment">//添加的起始行 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFCellStyle&nbsp;style&nbsp;=&nbsp;</span><span class="keyword">this</span><span>.getStyle(workbook); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Iterator&lt;Order&gt;&nbsp;it&nbsp;=&nbsp;listOrder.iterator(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Order&nbsp;order&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">while</span><span>(it.hasNext())&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;order&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;Order(); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;order&nbsp;=&nbsp;it.next(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row&nbsp;=&nbsp;sheet.createRow(rownum); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCreateCell(</span><span class="number">1</span><span>,&nbsp;String.valueOf(rownum-</span><span class="number">2</span><span>),&nbsp;row,&nbsp;cell,&nbsp;style);&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//列1 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCreateCell(</span><span class="number">2</span><span>,&nbsp;order.getAdName(),&nbsp;row,&nbsp;cell,&nbsp;style);&nbsp;&nbsp;&nbsp;</span><span class="comment">//列2 </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myCreateCell(</span><span class="number">3</span><span>,&nbsp;order.getSmallAreaName(),&nbsp;row,&nbsp;cell,&nbsp;style);&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//列1&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rownum++; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;workbook.write(os); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;os.flush(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;os.close(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(Exception&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;myCreateCell(</span><span class="keyword">int</span><span>&nbsp;cellnum,&nbsp;String&nbsp;value,&nbsp;HSSFRow&nbsp;row,&nbsp;HSSFCell&nbsp;cell,&nbsp;HSSFCellStyle&nbsp;style)&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cell&nbsp;=&nbsp;row.createCell((</span><span class="keyword">short</span><span>)&nbsp;cellnum); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cell.setCellValue(</span><span class="keyword">new</span><span>&nbsp;HSSFRichTextString(value)); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cell.setCellStyle(style); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;HSSFCellStyle&nbsp;getStyle(HSSFWorkbook&nbsp;workbook)&nbsp;{ &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置字体; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFFont&nbsp;font&nbsp;=&nbsp;workbook.createFont(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置字体大小; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font.setFontHeightInPoints((</span><span class="keyword">short</span><span>)&nbsp;</span><span class="number">10</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置字体名字; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font.setFontName(</span><span class="string">"宋体"</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//font.setItalic(true); </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//font.setStrikeout(true); </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置样式; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFCellStyle&nbsp;style&nbsp;=&nbsp;workbook.createCellStyle(); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置底边框; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setBorderBottom(HSSFCellStyle.BORDER_THIN); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置底边框颜色; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setBottomBorderColor(HSSFColor.BLACK.index); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置左边框; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setBorderLeft(HSSFCellStyle.BORDER_THIN); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置左边框颜色; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setLeftBorderColor(HSSFColor.BLACK.index); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置右边框; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setBorderRight(HSSFCellStyle.BORDER_THIN); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置右边框颜色; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setRightBorderColor(HSSFColor.BLACK.index); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置顶边框; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setBorderTop(HSSFCellStyle.BORDER_THIN); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置顶边框颜色; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setTopBorderColor(HSSFColor.BLACK.index); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//在样式用应用设置的字体; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setFont(font); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置自动换行; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setWrapText(</span><span class="keyword">false</span><span>); &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置水平对齐的样式为居中对齐; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setAlignment(HSSFCellStyle.ALIGN_CENTER); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//设置垂直对齐的样式为居中对齐; </span><span>&nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); &nbsp;&nbsp;</span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;style; &nbsp;&nbsp;</span></span>
<li><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span> </li>
<p><br />
EXCEL模板加载出错的问题：<br />
可能是因为模板中某些格式存在问题，或者模板中存在EXCEL的某些高级功能，【POI】无法加载导致出错。<br />
解决办法：自己一步步从最简单的excel文件开始，绘制模板。</p>
<img src ="http://www.blogjava.net/ocean07000814/aggbug/344865.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ocean07000814/" target="_blank">非洲小白脸</a> 2011-02-22 17:48 <a href="http://www.blogjava.net/ocean07000814/articles/344865.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>