域名設計與分析沈陽seo排名優(yōu)化推廣
- 點擊跳轉(zhuǎn)=>Unity3D特效百例
- 點擊跳轉(zhuǎn)=>案例項目實戰(zhàn)源碼
- 點擊跳轉(zhuǎn)=>游戲腳本-輔助自動化
- 點擊跳轉(zhuǎn)=>Android控件全解手冊
- 點擊跳轉(zhuǎn)=>Scratch編程案例
- 點擊跳轉(zhuǎn)=>軟考全系列
👉關于作者
專注于Android/Unity和各種游戲開發(fā)技巧,以及各種資源分享(網(wǎng)站、工具、素材、源碼、游戲等)
有什么需要歡迎底部卡片私我,交流讓學習不再孤單。
👉實踐過程
😜問題
我有個 Excel 文檔,里面有很多的圖片鏈接,需要進行內(nèi)容提取分類,并且保存為新的 Excel 文件。寫入保存后看到里面的超鏈接是默認的文本形式。失去了原 Excel 的超鏈接藍色以及跳轉(zhuǎn)功能。
😜解決
超鏈接
翻了翻 POI 的文檔, 很容易就找到了解決方案。在 POI 中讓單元格實現(xiàn)超鏈接功能, 可以用Hyperlink 函數(shù)。
方式一:
CreationHelper createHelper = yesOrNoWorkBook.getCreationHelper(); // 創(chuàng)建一個超鏈接對象
Hyperlink hyperlink = createHelper.createHyperlink(XSSFHyperlink.LINK_URL);
hyperlink.setAddress(str); // 設置超鏈接的地址
newCell.setHyperlink(hyperlink); // 在單元格中添加超鏈接
如代碼所示,實現(xiàn)起來超級簡單,借住了 Hyperlink 對象進行操作。
yesOrNoWorkBook 就是你的 workbook 操作對象,newCell 是你的列對象,
方式二:
newCell.setCellType(HSSFCell.CELL_TYPE_FORMULA);
//第一個參數(shù)是指向的地址,第二個參數(shù)是顯示的字符串
newCell.setCellFormula("HYPERLINK(\"" + "https://zhima.blog.csdn.net/"+ "\",\"" + "Google Canada"+ "\")");
//或者下面的方式 []里面是你的excel文檔,第二個是你的頁,A1 表示的 第一行A列。
newCell.setCellFormula("HYPERLINK(\"[workbook.xls]'sheet2'!A1\",\"芝麻粒兒\")");
//其中excel文檔指定還可以利用 # 表示當前文檔
newCell.setCellFormula("\"#Sheet!B2\",\"芝麻粒兒\"");
//上面代碼表示本文檔的Sheet頁,第二行B列是超鏈接,字體顯示為 芝麻粒兒
這段代碼中各有優(yōu)劣,newCell 是你的列對象。 第二行代碼可以指定具體的超鏈接內(nèi)容,下面兩行代碼是指定原 Excel 中的指定單元格為超鏈接。
字體樣式
上面超鏈接是插入了,但是超鏈接單元格看起來和一般的單元格沒有分別, 除非你把鼠標放上去才會變成手行光標。肉眼一看無法看出來是超鏈接。
為了和一般的習慣相符, 還需要把字符顏色變成藍色和加上下劃線。 這就要用到 style了。
CellStyle linkStyle = yesOrNoWorkBook.createCellStyle();
Font cellFont = yesOrNoWorkBook.createFont();
cellFont.setUnderline((byte) 1);
cellFont.setColor(IndexedColors.BLUE.getIndex());
linkStyle.setFont(cellFont);
newCell.setCellStyle(linkStyle);
上面的代碼實現(xiàn)也很簡單,yesOrNoWorkBook 是你自己的 workbook 對象,setUnderline 是設置下劃線,setColor 是設置字體顏色,借住了 IndexedColors 類。有的文章教程使用的其他的類,我嘗試了下 Android 平臺不一定支持。
弄完字體樣式后利用 setCellStyle 給對應的列設置即可。
👉其他
📢作者:小空和小芝中的小空
📢轉(zhuǎn)載說明-務必注明來源:https://zhima.blog.csdn.net/
📢這位道友請留步??,我觀你氣度不凡,談吐間隱隱有王者霸氣💚,日后定有一番大作為📝!!!旁邊有點贊👍收藏🌟今日傳你,點了吧,未來你成功??,我分文不取,若不成功??,也好回來找我。
溫馨提示:點擊下方卡片獲取更多意想不到的資源。