ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java 操作excel 插入删除列,插入删除图片

2021-12-14 20:59:47  阅读:188  来源: 互联网

标签:xlsx Java wb 删除 插入 import Workbook sheet public


Java 操作Excel 文档
引用 Free Spire.XLS for Java版本: 3.9.1 包
官方文档
或jar包
在这里插入图片描述

添加图片

import com.spire.xls.*;

public class AddImage {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //获取工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //添加图片
        ExcelPicture picture = sheet.getPictures().add(7,2,"tp.png");
        picture.setHeight(270);//设置图片高度
        picture.setWidth(550);//设置图片宽度
        picture.setRotation(20);//设置图片旋转角度
        picture.setAlternativeText("Picture1");//设置图片可选文本
        picture.setHyperLink("http://www.baidu.com",true);//添加超链接到图片

        //保存文档
        wb.saveToFile("AddImage.xlsx", ExcelVersion.Version2010);
        wb.dispose();
    }
}

读取图片

import com.spire.xls.*;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class ExtractImage {
    public static void main(String[] args) throws IOException {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("AddImage.xlsx");

        //获取第一张工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //获取工作表中第一张图片并保存到指定路径
        ExcelPicture pic = sheet.getPictures().get(0);
        BufferedImage loImage = pic.getPicture();
        ImageIO.write(loImage,"jpg",new File("ExtractedImage.jpg"));
    }
}

删除图片

import com.spire.xls.*;

public class RemoveImage {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("AddImage.xlsx");

        //获取指定工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //获取指定图片,删除
        sheet.getPictures().get(0).remove();

        //保存文档
        wb.saveToFile("RemoveImage.xlsx",ExcelVersion.Version2010);
        wb.dispose();
    }
}

插入行或列


import com.spire.xls.*;

public class InsertRowAndColumn {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //获取工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        sheet.insertRow(2);//在第2行插入默认格式的行
        //sheet.insertRow(2,2);//在第2行插入默认格式的两行
        //sheet.insertRow(5,1,InsertOptionsType.FormatAsAfter);//在第5行插入和下一行格式相同的两行

        sheet.insertColumn(3);//在第3列插入默认格式的列
        //sheet.insertColumn(3,2);//在第3列插入默认格式的两列
        //sheet.insertColumn(3,1,InsertOptionsType.FormatAsBefore);//在第3列插入和前一列格式相同的一列

        //保存文档
        wb.saveToFile("InsertRowAndColumn.xlsx");
        wb.dispose();
    }
}

隐藏、显示行或列


import com.spire.xls.*;

public class HideAndShowRowOrColumn {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //获取指定工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //隐藏第9行
        sheet.hideRow(9);
        //隐藏第3列
        sheet.hideColumn(3);

        //sheet.showRow(3);//显示行
        //sheet.showColumn(3);//显示列

        //保存文档
        wb.saveToFile("HideAndShow.xlsx");
        wb.dispose();
    }
}

删除行或列


import com.spire.xls.*;

public class DeleteRowAndColumn {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.loadFromFile("test.xlsx");

        //获取工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        sheet.deleteRow(1);//删除第1行
        //sheet.deleteRow(1,2);//删除第1行及下一行在内的两行
        sheet.deleteColumn(4);//删除第4列
        //sheet.deleteColumn(4,2);//删除第4列及右侧一列在内的两列

        //保存文档
        wb.saveToFile("DeleteRowAndColumn.xlsx");
        wb.dispose();
    }
}

标签:xlsx,Java,wb,删除,插入,import,Workbook,sheet,public
来源: https://blog.csdn.net/qq_41982570/article/details/121939587

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有