http://service.hb.10086.cn/ecare/qryDetailList.action
办理移动的话费
点了查询之后:显示出如上所示的 url可以看出是执行了 qryDetailList.action
这个页面是没有分页的,所以页面很长很长上面就是一个按钮:html代码如下:
<input class="btn_text4" type="button" onclick="exportDetailExcel();" value="导出EXCEL">这个导出Excel 执行的就是 generateDetailExcel.action 这个action找了下资料  :jxl
poi
ireport 
貌似都可以解决,由于项目时间紧、所以一个个的试貌似也范不着了。
想问下: 本人项目中导出/导入的部分还是非常多的,是一个小的系统,
问下,有经验的同学,哪种适合我?

解决方案 »

  1.   

    我只用过poi不过很简单 - - 。 网上搜个例子就可以用了!
      

  2.   

    windows平台的服务器  能用 jacob的 其他的平台   就poi了 
      

  3.   

    曾经写过POI来导入导出,感觉还是挺方便的。
      

  4.   

    POI和JXL比较常见,用的比较多的还是JLX,两个的功能上不相上下,至于兼容性吗,如3楼,不知道JXL在其他非windows系统上如何。
      

  5.   

    想问下
    我想实现个  web打印 的 东西 有推荐的么  呵呵 谢谢啦。~
      

  6.   

    想问下
    我想实现个 web打印 的 东西 有推荐的么 呵呵 谢谢啦。~
      

  7.   

    jxl
    这个比较简单点!你自己写一个很快的
      

  8.   

    给你个我自己写的很简单的例子,仅供参考。。用jxl的
    package jxl;
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.OutputStream;
    import jxl.write.Label;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;
    import jxl.write.WriteException;
    import jxl.write.biff.RowsExceededException;public class JxlExcelWriter {
        
        /**
         * @param out 输出excel文件.
         * @param br 输入txt文件.
         */
        public void writeExcel(OutputStream out, BufferedReader br) {
            if(br == null) {
                throw new IllegalArgumentException("写excel流需要file!");
            }
            try {
                int rowNum = 0; // 写入行数
                int sheetNum = 1; // 写入sheet编号
                
                WritableWorkbook workbook = Workbook.createWorkbook(out);
                WritableSheet ws = workbook.createSheet("sheet " + sheetNum, 0);
                
                //文件行数
                String line = null;
                while((line = br.readLine()) != null){
                    String[] data = line.split("\t");
                    putRow(ws, rowNum, data); // 写一行到sheet
                    rowNum++;
                    if(rowNum > 10000){
                        rowNum = 0;
                        sheetNum++;
                        ws = workbook.createSheet("sheet " + sheetNum, 0);
                    }
                }
                
                workbook.write();
                workbook.close(); // 关闭、保存Excel
                
                System.out.print("success!");
            } catch (RowsExceededException e) {
                System.out.println("jxl write RowsExceededException: "+e.getMessage());
            } catch (WriteException e) {
                System.out.println("jxl write WriteException: "+e.getMessage());
            } catch (IOException e) {
                System.out.println("jxl write file i/o exception!, cause by: "+e.getMessage());
            }
        }    private void putRow(WritableSheet ws, int rowNum, String[] data) throws RowsExceededException, WriteException {
            
            for(int i=0; i<data.length; i++) {
                Label cell = new Label(i, rowNum, ""+data[i]);
                ws.addCell(cell);
            }
        }
        
        public static void main(String args[]) {
            
            try {
                BufferedReader br = new BufferedReader(new FileReader("e:/input/data.txt"));
                OutputStream out = new FileOutputStream(new File("e:/out/test.xls"));
                
                JxlExcelWriter jxlExcelWriter = new JxlExcelWriter();
                jxlExcelWriter.writeExcel(out, br);
                out.close();
                br.close();
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
        }
    }
      

  9.   

    jxl 支持2003 2007吗?
    我看有人说 不支持2007呢,03呢?