陕西城乡建设部网站,深圳市无限空间工业设计有限公司,商务网站开发背景,天天新品网做网站点击跳转Unity3D特效百例点击跳转案例项目实战源码点击跳转游戏脚本-辅助自动化点击跳转Android控件全解手册点击跳转Scratch编程案例点击跳转软考全系列
#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧#xff0c;以及各种资源分享Unity3D特效百例点击跳转案例项目实战源码点击跳转游戏脚本-辅助自动化点击跳转Android控件全解手册点击跳转Scratch编程案例点击跳转软考全系列
关于作者 专注于Android/Unity和各种游戏开发技巧以及各种资源分享网站、工具、素材、源码、游戏等 有什么需要欢迎底部卡片私我交流让学习不再孤单。 实践过程
问题
我有个 Excel 文档里面有很多的图片链接需要进行内容提取分类并且保存为新的 Excel 文件。写入保存后看到里面的超链接是默认的文本形式。失去了原 Excel 的超链接蓝色以及跳转功能。
解决
超链接
翻了翻 POI 的文档 很容易就找到了解决方案。在 POI 中让单元格实现超链接功能 可以用Hyperlink 函数。 方式一
CreationHelper createHelper yesOrNoWorkBook.getCreationHelper(); // 创建一个超链接对象
Hyperlink hyperlink createHelper.createHyperlink(XSSFHyperlink.LINK_URL);
hyperlink.setAddress(str); // 设置超链接的地址
newCell.setHyperlink(hyperlink); // 在单元格中添加超链接如代码所示实现起来超级简单借住了 Hyperlink 对象进行操作。 yesOrNoWorkBook 就是你的 workbook 操作对象newCell 是你的列对象
方式二
newCell.setCellType(HSSFCell.CELL_TYPE_FORMULA);
//第一个参数是指向的地址第二个参数是显示的字符串
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列是超链接字体显示为 芝麻粒儿这段代码中各有优劣newCell 是你的列对象。 第二行代码可以指定具体的超链接内容下面两行代码是指定原 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);上面的代码实现也很简单yesOrNoWorkBook 是你自己的 workbook 对象setUnderline 是设置下划线setColor 是设置字体颜色借住了 IndexedColors 类。有的文章教程使用的其他的类我尝试了下 Android 平台不一定支持。 弄完字体样式后利用 setCellStyle 给对应的列设置即可。
其他 作者小空和小芝中的小空 转载说明-务必注明来源https://zhima.blog.csdn.net/ 这位道友请留步☁️我观你气度不凡谈吐间隐隐有王者霸气日后定有一番大作为旁边有点赞收藏今日传你点了吧未来你成功☀️我分文不取若不成功⚡️也好回来找我。 温馨提示点击下方卡片获取更多意想不到的资源。