日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

excel-xssfx文件下载导出上下标代码

發布時間:2024/1/1 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 excel-xssfx文件下载导出上下标代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
excel列頭樣例: "test<sub>1</sub>" , "test<sup>2</sup>",//詳細代碼 private static final Pattern scriptPattern = Pattern.compile("<(su[b|p])>([^<>]+)</\\1>");public RichTextString getRichTextHeader(String value){Matcher scriptMatcher = scriptPattern.matcher(value);String label,labelContent, labelName, temp = value;int start,end;List<SubSupFont> list = new ArrayList<>();Workbook workbook = new SXSSFWorkbook();while(scriptMatcher.find()){Font ft = workbook.createFont();label = scriptMatcher.group(0); //一組標簽,如:<sub>a</sub>labelName = scriptMatcher.group(1); // 標簽名字,如:sub/suplabelContent = scriptMatcher.group(2); // 標簽之間的內容,如:astart = temp.indexOf(label);//這個標簽的起始位置end = start + labelContent.length(); //這個標簽的內容長度temp = temp.replace(label, labelContent); // 替換一組標簽為標簽之間的內容if(StringUtils.isEmpty(temp)){continue;}if("sub".equalsIgnoreCase(labelName)){ft.setTypeOffset(HSSFFont.SS_SUB); //下標}else{ft.setTypeOffset(HSSFFont.SS_SUPER); //上標}list.add(new ScriptFont(start,end,ft));}RichTextString richTextString;if(list.size() > 0){richTextString = new XSSFRichTextString(temp);for(ScriptFont scriptFont: list){richTextString.applyFont(scriptFont.getStart(),scriptFont.getEnd(),scriptFont.getFt());}}else{richTextString = new XSSFRichTextString(value);}return richTextString;}//然后把上面的設置給cell的value,如下所示: cell.setCellValue(getRichTextHeader("test<sub>1</sub>"));//ScriptFont類如下: @Data @AllArgsConstructor public class ScriptFont{public int start;public int end;public Font ft; }以上代碼支持XSSFWorkbook, 而SXSSFWorkbook大數據量下載的不支持,因為流格式數據不是放在共享內存里面的

總結

以上是生活随笔為你收集整理的excel-xssfx文件下载导出上下标代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。