<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Bryan

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      37 Posts :: 3 Stories :: 24 Comments :: 0 Trackbacks

    Recently,we are maintaining a project and there is a bug "unreadable content in *.xls" when we export the excel report using the POI.For several days,we are unable to find the real reason.though from the beginning,we thought that It was the format,cell style,link problem.finally,we find that It is due to the Hyperlink problem.Of course ,there maybe other reasons which can cause this error.

    The example below comes from the POI website and I make some minor changes. By running it,we can get the error. whether It links to a url, file etc.

    public class POIExport{
     public static void main(String[] args) throws IOException{
      Workbook wb = new HSSFWorkbook(); //or new HSSFWorkbook();
         CreationHelper createHelper = wb.getCreationHelper();

         //cell style for hyperlinks
         //by default hypelrinks are blue and underlined
         CellStyle hlink_style = wb.createCellStyle();
         Font hlink_font = wb.createFont();
         hlink_font.setUnderline(Font.U_SINGLE);
         hlink_font.setColor(IndexedColors.BLUE.getIndex());
         hlink_style.setFont(hlink_font);

        
         Sheet sheet = wb.createSheet("Hyperlinks");
         //number of rows
         for (int i = 0; i < 14000 ; i++){
          Row row = sheet.createRow(i);
          //number of columns
          for(int j = 0 ; j < 5; j++){
           Cell cell = row.createCell((short)j);
           cell.setCellValue("URL Link");
           Hyperlink link = createHelper.createHyperlink(Hyperlink.LINK_URL);
           link.setAddress("http://poi.apache.org/");
           cell.setHyperlink(link);
           cell.setCellStyle(hlink_style);
          }
         }
         FileOutputStream out = new FileOutputStream("hyperinks.xls");
         wb.write(out);
         out.close();

     }

    }

    So we think that It's a bug of POI 3.5 and as a substitue,we try to use the formula to solve this issue.
    I have consulted with the POI development team and they say that the MS Excel can only have 64k Hyperlinks,but for this I have no idea. and I have also tested JXL which is another tool for generating the excel report and It has the same problem. for this question ,you can visit the url  for more details: https://issues.apache.org/bugzilla/show_bug.cgi?id=49654

    public class TestJXL {

    public static void main(String[] args) throws IOException, WriteException {

    String outputFile="jxl.xls";

    WorkbookSettings wb = new WorkbookSettings();

    wb.setLocale(new Locale("en", "EN"));

    WritableWorkbook book = Workbook.createWorkbook(new File(outputFile),wb);

    WritableSheet sheet= book.createSheet("Hyperlink",0);

    for(int i= 0 ;i < 6;i++)

    {

    for(int j = 0;j<10921; j ++){

    WritableHyperlink wh = new WritableHyperlink(i, j,

    new URL("http://www.andykhan.com/jexcelapi"));

    sheet.addHyperlink(wh);

    }

    }

    book.write();

    book.close();

    }

    }

    It seems that by POI and JXL, the excel report which can only have 65530 Hyperlinks and if It exceeds,It will give us the error.Anyone who have solution to this problem is welcome.Thanks.

    Meanwhile,if the output excel report has no format limitation,you can thinking of the following way instead.but if you have to set the format of the Hyperlink formula cell,the following method will not function.
    cell.setCellFormula("HYPERLINK(""http://mycsinfo.blog.hexun.com/26115547_d.html"",""Interpretation"")")

    posted on 2010-07-27 20:04 Life is no respector of any genius. 閱讀(505) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 成年女人色毛片免费看| 亚洲一区免费观看| 波多野结衣久久高清免费| 亚洲 欧洲 自拍 另类 校园| 噼里啪啦免费观看高清动漫4 | www.黄色免费网站| 亚洲成aⅴ人片在线影院八| 亚洲成人免费网站| 亚洲欧洲另类春色校园网站| 歪歪漫画在线观看官网免费阅读| 在线亚洲午夜片AV大片| 精品免费久久久久久成人影院| 亚洲爆乳少妇无码激情| 免费一级毛片在线播放不收费| 国产成人亚洲精品电影| 国产亚洲精品线观看动态图| a级大片免费观看| 精品日韩亚洲AV无码一区二区三区| 日韩精品极品视频在线观看免费 | 久久久久成人片免费观看蜜芽| 色婷婷六月亚洲婷婷丁香| 欧洲一级毛片免费| 亚洲精华液一二三产区| 亚洲色偷偷综合亚洲AV伊人| 99麻豆久久久国产精品免费 | vvvv99日韩精品亚洲| 久久久受www免费人成| 亚洲视频在线观看地址| 日韩精品无码区免费专区 | 精品久久久久久亚洲中文字幕| 亚洲黄片毛片在线观看| 嫩草成人永久免费观看| 亚洲精品国产国语| 亚洲成片观看四虎永久| 久艹视频在线免费观看| 亚洲精品无码你懂的| 伊人久久亚洲综合| 成人黄软件网18免费下载成人黄18免费视频 | 亚洲一区二区三区免费观看| 亚洲人AV在线无码影院观看| 中文字幕人成人乱码亚洲电影 |