jexcelapi(jxl)初试小记

最近做静态页面做的精神萎靡,添加数据更让人崩溃到极点,即使数据不是自编自造,单从别人的页面table中拷贝、粘贴的机械操作就能让人少吃几碗饭。所以想找个法子偷懒。
偷懒思路:从现成数据页的table中copy出数据(对方数据是动态取得,源文件中找不到)--->将数据粘贴到excel中--->删除多余行-->用jxl自动生成所需要的数据table。

本来想的挺复杂,结果上网一搜索,有jxl这东西,于是下下来以用,结果没写几句代码就解决问题:
1.源码中有个Demo.java,是可以运行的,直接给设置它的运行参数。我用的-csv
2.第二个参数设置为要读取的excel文件地址.
3.设置完参数之后,修改同包下的CSV.java
该为:
try
    {
      OutputStreamWriter osw = new OutputStreamWriter(out, encoding);
      BufferedWriter bw = new BufferedWriter(osw);
      
      for (int sheet = 0; sheet < w.getNumberOfSheets(); sheet++)
      {
        Sheet s = w.getSheet(sheet);

        if (!(hide && s.getSettings().isHidden()))
        {
          bw.write("*** " + s.getName() + " ****");
          bw.newLine();
          
          Cell[] row = null;
          
          for (int i = 0; i < s.getRows() ; i++)
          {
            row = s.getRow(i);
            //按奇偶行做不同输出
            if((i&1)!=0) bw.write("<tr class=\"odd\">"); else bw.write("<tr class=\"even\">");
            if (row.length > 0)
            {
              if (!(hide && row[0].isHidden()))
              {
                bw.write("<td>"+row[0].getContents()+"</td>");
                // Java 1.4 code to handle embedded commas
                // bw.write("\"" + row[0].getContents().replaceAll("\"","\"\"") + "\"");
              }
              
              for (int j = 1; j < row.length; j++)
              {
                //bw.write(',');
			    if (!(hide && row[j].isHidden()))
			    {
			      bw.write("<td>"+row[j].getContents()+"</td>");
			      // Java 1.4 code to handle embedded quotes
			      //  bw.write("\"" + row[j].getContents().replaceAll("\"","\"\"") + "\"");
			    }
              }
            }
            bw.write("</tr>");
            bw.newLine();
          }
        }
      }

再运行输出,就可以得到想要的tr,td了:
<tr class="even"><td>序号</td><td>代码</td><td>名称</td><td></td><td>地址</td><td>电话</td><td>负责人</td><td>法人代表</td><td>单位性质</td><td>信誉度</td><td>组织代码</td><td>注册地址</td><td>所属行业</td><td>规模等级</td></tr>
<tr class="odd"></tr>
<tr class="even"><td>1</td><td>frd</td><td>北京散热器制造有限公司</td><td></td><td></td><td>1080380471</td><td>管理员</td><td>陈利</td><td>国营企业</td><td>良好</td><td>1</td><td></td><td>设备</td></tr>
<tr class="odd"><td>2</td><td>xzads</td><td>电梯有限公司</td><td></td><td></td><td>0371-66280855</td><td>管理员</td><td></td><td>国营企业</td><td>良好</td><td>1</td><td></td><td>设备</td></tr>
……


待续...

你可能感兴趣的:(html,制造,Excel,J#)