Java輕松實現(xiàn)在Excel中添加超鏈接功能
前言
超鏈接是指在網(wǎng)頁或電子文檔中常見的元素,它的主要作用是將一個文本或圖像與另一網(wǎng)頁、文件或資源鏈接起來,從而使用戶能夠通過點擊該鏈接跳轉(zhuǎn)到目標資源、超鏈接可以起到導(dǎo)航以及引用的作用。超鏈接通常有以下幾種用途:
- 網(wǎng)頁鏈接
- 文檔鏈接
- 內(nèi)部定位鏈接
- 電子郵件鏈接
在Java中設(shè)置超鏈接
下面小編將為大家介紹如何使用Java實現(xiàn)超鏈接的添加、刪除和帶形狀的超鏈接。在下面的例子中我們使用到了GcExcel產(chǎn)品,具體的例子如下。
添加超鏈接
下面的代碼,添加了四個鏈接,分別是外部文件,網(wǎng)頁鏈接,定位鏈接及郵件鏈接。
Workbook wb = new Workbook();
IWorksheet sheet = wb.getActiveSheet();
// 添加外部文件鏈接
sheet.getRange("A1:B2").getHyperlinks().add(sheet.getRange("A1"),
"C:/Documents/GcExcel/GrapeCityDocumentsExcel/Project/Hyperlink/SampleFile.xlsx",
null, "鏈接至SampleFile.xlsx文件.", "SampleFile.xlsx");
// 添加網(wǎng)頁鏈接
sheet.getRange("A3:B4").getHyperlinks().add(sheet.getRange("A3"),
"http://www.grapecity.com.cn/", null,
"打開葡萄城官網(wǎng).", "葡萄城");
// 添加內(nèi)部定位鏈接
sheet.getRange("A5:B6").getHyperlinks().add(sheet.getRange("A5"),
null, "Sheet1!$C$3:$E$4", "跳轉(zhuǎn)至 sheet1 C3:E4", "");
// 添加郵件鏈接
sheet.getRange("A7:B8").getHyperlinks().add(sheet.getRange("A7"),
"mailto:sales.xa@grapecity.com", null,
"發(fā)送至銷售部門", "發(fā)送至中國銷售");
wb.save("output/hyperlinks.xlsx");
實現(xiàn)效果如下圖:

刪除超鏈接
通過 delete 可以刪除對應(yīng)單元格上的超鏈接,下面代碼刪除了 "A5:B6" 單元格中的超鏈接。
Workbook wb = new Workbook();
wb.open("output/hyperlinks.xlsx");
IWorksheet sheet = wb.getActiveSheet();
sheet.getRange("A5:B6").getHyperlinks().delete();
wb.save("output/removeHyperlinks.xlsx");
實現(xiàn)效果如下圖:

帶有超鏈接的形狀
除了普通的超鏈接,GcExcel 還支持帶有超鏈接的形狀,通過下面的代碼可以創(chuàng)建帶有超鏈接的形狀。
// 創(chuàng)建workbook
Workbook workbook = new Workbook();
IWorksheet worksheet = workbook.getActiveSheet();
// 添加形狀
IShape shape1 = worksheet.getShapes().addShape(AutoShapeType.Rectangle, 10, 0, 100, 100);
shape1.getTextFrame().getTextRange().add("點擊訪問GcExcel官網(wǎng)");
IShape shape2 = worksheet.getShapes().addShape(AutoShapeType.RightArrow, 10, 120, 100, 100);
shape2.getTextFrame().getTextRange().add("跳轉(zhuǎn)至 sheet1 C3:E4");
IShape shape3 = worksheet.getShapes().addShape(AutoShapeType.Oval, 10, 240, 100, 100);
shape3.getTextFrame().getTextRange().add("發(fā)送郵件");
IShape shape4 = worksheet.getShapes().addShape(AutoShapeType.LeftArrow, 10, 360, 100, 100);
shape4.getTextFrame().getTextRange().add("鏈接external.xlsx文件");
//給shape1添加網(wǎng)址鏈接
worksheet.getHyperlinks().add(shape1,
"https://www.grapecity.com.cn/developer/grapecitydocuments/excel-java",
null, "點擊訪問GcExcel官網(wǎng)", "GcExcel");
//給shape2添加內(nèi)部定位鏈接
worksheet.getHyperlinks().add(shape2, null, "Sheet1!$C$3:$E$4", "跳轉(zhuǎn)至 sheet1 C3:E4", null);
//給shape3添加郵件鏈接
worksheet.getHyperlinks().add(shape3, "mailto:sales.xa@grapecity.com",
null, "發(fā)送郵件", "發(fā)送郵件");
//給shape4添加文檔鏈接
String path = "external.xlsx";
worksheet.getHyperlinks().add(shape4, path, null,
"鏈接external.xlsx文件", "External.xlsx");
//保存到Excel
workbook.save("output/shapeHyperlink.xlsx");
實現(xiàn)效果如下圖:

總結(jié)
綜上所述,超鏈接是網(wǎng)頁和電子文檔中常見的元素,它將文本或圖像與其他資源相關(guān)聯(lián),實現(xiàn)了導(dǎo)航和引用的功能。無論是在網(wǎng)頁中還是在Java編程中,我們都可以靈活運用超鏈接來連接不同的內(nèi)容和資源。通過添加、刪除和帶形狀的超鏈接,我們可以實現(xiàn)更加豐富和個性化的用戶交互體驗。超鏈接的應(yīng)用范圍廣泛,包括網(wǎng)頁鏈接、文檔鏈接、內(nèi)部定位鏈接和電子郵件鏈接等。相信隨著技術(shù)的不斷發(fā)展,超鏈接將在互聯(lián)網(wǎng)和數(shù)字化領(lǐng)域中扮演越來越重要的角色,為用戶提供更加便捷和豐富的資源訪問方式。
到此這篇關(guān)于Java輕松實現(xiàn)在Excel中添加超鏈接功能的文章就介紹到這了,更多相關(guān)Java Excel添加超鏈接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用MyBatis的動態(tài)SQL注解實現(xiàn)實體的CRUD操作代碼
在使用MyBatis進行數(shù)據(jù)庫操作時,動態(tài)SQL注解提供了一種優(yōu)雅的方式來編寫動態(tài)SQL語句,MyBatis?3.x?版本提供了下四個CRUD的高級注解,這些注解可以幫助開發(fā)者在Mapper接口中動態(tài)地構(gòu)建SQL語句,本文給大家介紹了使用MyBatis的動態(tài)SQL注解實現(xiàn)實體的CRUD操作2024-06-06
使用spring-boot-admin對spring-boot服務(wù)進行監(jiān)控的實現(xiàn)方法
這篇文章主要介紹了使用spring-boot-admin對spring-boot服務(wù)進行監(jiān)控的實現(xiàn)方法,需要的朋友可以參考下2018-02-02
postman測試傳入List<String>參數(shù)方式
這篇文章主要介紹了postman測試傳入List<String>參數(shù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
SpringIOC?BeanDefinition的加載流程詳解
這篇文章主要為大家介紹了SpringIOC?BeanDefinition的加載流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
Idea中如何調(diào)出Run dashboard 或services窗口
這篇文章主要介紹了Idea中如何調(diào)出Run dashboard 或services窗口問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03

