超鏈接即內容鏈接,通過給特定對象設置超鏈接,可實現載體與特定網頁、文件、郵件、網絡等的鏈接,點擊鏈接載體可打開鏈接目標,在文檔處理中是一種比較常用的功能。本文將介紹通過Java程序給Excel文檔添加超鏈接的方法,這里支持添加多種不同類型的鏈接,如URL網頁鏈接、Workbook工作簿鏈接、File文檔鏈接、Unc網絡路徑鏈接等。
使用工具:Free Spire.XLS for Java (免費版)
注:通過官網下載包,並解壓將lib文件夾下的jar文件導入java程序。如下導入效果:
Java代碼示例
import com.spire.xls.*; public class AddHyperlink { public static void main(String[] args) { //加載Excel文檔 Workbook wb = new Workbook(); wb.loadFromFile("test.xlsx"); //獲取工作表 Worksheet sheet = wb.getWorksheets().get(0); //添加URL鏈接,鏈接到網頁地址 HyperLink UrlLink = sheet.getHyperLinks().add(sheet.getCellRange("B3")); UrlLink.setTextToDisplay(sheet.getCellRange("B3").getText()); UrlLink.getType().compareTo(HyperLinkType.Url); UrlLink.setAddress("https://www.baidu.com/"); //添加URL鏈接,鏈接到郵件地址 HyperLink MailLink = sheet.getHyperLinks().add(sheet.getCellRange("D3")); MailLink.setTextToDisplay(sheet.getCellRange("D3").getText()); MailLink.getType().compareTo(HyperLinkType.Url); MailLink.setAddress("mailto: support @ e-iceblue.com"); //添加File文檔鏈接,鏈接到指定文檔 HyperLink FileLink = sheet.getHyperLinks().add(sheet.getCellRange("B7")); FileLink.setTextToDisplay(sheet.getCellRange("B7").getText()); FileLink.getType().compareTo(HyperLinkType.File); FileLink.setAddress("E:\\IDEA\\sample.docx"); // 添加Workbook文檔鏈接,鏈接到工作簿文檔(這里鏈接到測試文檔中的指定sheet中的指定單元格) HyperLink WbLink = sheet.getHyperLinks().add(sheet.getCellRange("D7")); WbLink.getType().compareTo(HyperLinkType.Workbook); WbLink.setTextToDisplay(sheet.getCellRange("D7").getText()); WbLink.setAddress("Sheet2!B5"); //添加Unc鏈接,鏈接到網絡路徑 HyperLink UncLink = sheet.getHyperLinks().add(sheet.getCellRange("B11")); UncLink.getType().compareTo(HyperLinkType.Unc); UncLink.setTextToDisplay(sheet.getCellRange("B11").getText()); UncLink.setAddress("\\192.168.1.108"); //保存文檔 wb.saveToFile("AddHyperlink.xlsx",ExcelVersion.Version2010); wb.dispose(); } }
文檔超鏈接添加效果: