HSSF 字体下划线
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                HSSF 字体下划线
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                設(shè)置下劃線找了好久。最后找了POI,英語不好啊。。。有試了好幾次才明白。。。。。中國人努力,把技術(shù)文檔都變成中文。。。。讓外國人也體驗(yàn)下咱中文的博大精深。。
這是我項(xiàng)目中想要的結(jié)果,不過下面我給了個自己寫的能單獨(dú)運(yùn)行成功的小例子,不懂的可以試試。當(dāng)然,可以聯(lián)系我。。。
 
相關(guān)代碼:
boolean result=false;// 第一步,創(chuàng)建一個webbook,對應(yīng)一個Excel文件HSSFWorkbook wb = new HSSFWorkbook();// 第二步,在webbook中添加一個sheet,對應(yīng)Excel文件中的sheetHSSFSheet sheet = wb.createSheet("sheet1");// 設(shè)置字體HSSFFont headfont = wb.createFont();headfont.setFontName("宋體");headfont.setFontHeightInPoints((short) 20);// 字體大小headfont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 加粗HSSFFont font1 = wb.createFont();font1.setFontName("宋體");font1.setFontHeightInPoints((short) 12);// 字體大小HSSFFont font3 = wb.createFont();font3.setFontName("宋體");font3.setFontHeightInPoints((short) 12);font3.setColor(HSSFFont.COLOR_RED);font3.setUnderline((byte)1);//表頭樣式HSSFCellStyle headstyle = wb.createCellStyle();headstyle.setFont(headfont);headstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中headstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中headstyle.setLocked(true);headstyle.setWrapText(true);// 自動換行//正文樣式HSSFCellStyle style = wb.createCellStyle();style.setFont(font1);HSSFCellStyle style2 = wb.createCellStyle();style2.setFont(font1);style2.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 創(chuàng)建一個居中格式style2.setBorderBottom(HSSFCellStyle.BORDER_THIN);//下邊框 style2.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左邊框 style2.setBorderRight(HSSFCellStyle.BORDER_THIN);//右邊框 style2.setBorderTop(HSSFCellStyle.BORDER_THIN);//上邊框// 第三步,在sheet中添加表頭第0行,注意老版本poi對Excel的行數(shù)列數(shù)有限制short//創(chuàng)建第0行,添加查詢條件sheet.setColumnWidth(0,1000*5);sheet.setColumnWidth(1,1000*5);sheet.setColumnWidth(2,1000*5);sheet.setColumnWidth(3,1000*5);sheet.setColumnWidth(4,1000*5);sheet.setColumnWidth(5,1000*5);sheet.setColumnWidth(6,1000*5);sheet.setColumnWidth(7,1000*5);HSSFRow row = sheet.createRow((int) 0);// 第四步,創(chuàng)建單元格,并設(shè)置值表頭 設(shè)置表頭居中List<SssbtzdBean> list1= getSssbtzdById(id);SssbtzdBean bean=list1.get(0);List<SssbtzdmxBean> list=sssbtzdDao.getSssbtzdmxById(bean.getId());row.setHeightInPoints((float)29.25);HSSFCell head=row.createCell((int)0);head.setCellValue(new HSSFRichTextString("傷損設(shè)備通知單("+bean.getId()+")"));head.setCellStyle(headstyle);/*** 合并單元格* 第一個參數(shù):第一個單元格的行數(shù)(從0開始)* 第二個參數(shù):第二個單元格的行數(shù)(從0開始)* 第三個參數(shù):第一個單元格的列數(shù)(從0開始)* 第四個參數(shù):第二個單元格的列數(shù)(從0開始)*/sheet.addMergedRegion(new CellRangeAddress(0,0,0,7));row = sheet.createRow((int) 1);//設(shè)置下劃線代碼部分row.setHeightInPoints((float)21);HSSFCell cell = row.createCell((int) 0);String string="班組 "+bean.getBz()+" 儀器串號 "+bean.getYqch()+" 發(fā)現(xiàn)人 "+bean.getFxr()+" 復(fù)核人 "+bean.getFhr()+".";HSSFRichTextString richtext = new HSSFRichTextString(string);richtext.applyFont(0, string.length(), font1);int start="班組 ".length();int end=start+bean.getBz().length();richtext.applyFont(start, end, font3);start=end+" 儀器串號 ".length();end=start+bean.getYqch().length();richtext.applyFont(start, end, font3);start=end+" 發(fā)現(xiàn)人 ".length();end=start+bean.getFxr().length();richtext.applyFont(start, end, font3);start=end+" 復(fù)核人 ".length();end=start+bean.getFhr().length();richtext.applyFont(start, end, font3);cell.setCellValue(richtext);cell.setCellStyle(style);sheet.addMergedRegion(new CellRangeAddress(1,1,0,7));row = sheet.createRow((int) 2);row.setHeightInPoints((float)19.5);cell = row.createCell((int) 0);string="線別 "+bean.getXb()+" 通知 "+bean.getTzxlcj()+bean.getTzgq();richtext=new HSSFRichTextString(string);richtext.applyFont(0, string.length(), font1);start="線別 ".length();end=start+bean.getXb().length();richtext.applyFont(start, end, font3);start=end+" 通知 ".length();end=start+bean.getTzxlcj().length()+bean.getTzgq().length();richtext.applyFont(start, end, font3);cell.setCellValue(richtext);cell.setCellStyle(style);sheet.addMergedRegion(new CellRangeAddress(2,2,0,7));這是我自己寫的小例子,導(dǎo)入個HSSF的jar就能運(yùn)行
 
 
1.我的例子放在了百度網(wǎng)盤,jar當(dāng)然也在里面。。。http://pan.baidu.com/s/1IpXS
 
 
 
總結(jié)
以上是生活随笔為你收集整理的HSSF 字体下划线的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: matlab/simulink学习的笔记
 - 下一篇: Altium Designer 如何批量