gpt4 book ai didi

java - 从 .xls 文件中读取图像及其位置的引用

转载 作者:行者123 更新时间:2023-11-30 08:46:39 26 4
gpt4 key购买 nike

在我的一个项目中,我需要从 .xls 文件中读取图像。对于每一行,有一列包含我需要读出的图像。

看起来我可以一起读取所有图像,但我如何才能同时获得每张图像的位置,例如列号和行号,以便将这些图像与其他数据相关联?

最佳答案

只要形状是图片,下面的都可以:

import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.*;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;

import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.FileInputStream;
import java.io.InputStream;

class GetShapePosition {

public static void main(String[] args) {
try {

InputStream inp = new FileInputStream("workbook.xls");
Workbook wb = WorkbookFactory.create(inp);

HSSFSheet sheet = (HSSFSheet)wb.getSheetAt(0);

HSSFPatriarch dravingPatriarch = sheet.getDrawingPatriarch();

java.util.List<HSSFShape> shapes = dravingPatriarch.getChildren();

for (HSSFShape shape : shapes) {
if (shape instanceof HSSFPicture) {
HSSFPicture hssfPicture = (HSSFPicture)shape;
int picIndex = hssfPicture.getPictureIndex();
String filename = hssfPicture.getFileName();
int row = hssfPicture.getClientAnchor().getRow1();
int col = hssfPicture.getClientAnchor().getCol1();
System.out.println("Picture " + picIndex + " with Filename: " + filename + " is located row: " + row + ", col: " + col);
}
}

} catch (InvalidFormatException ifex) {
} catch (FileNotFoundException fnfex) {
} catch (IOException ioex) {
}
}
}

关于java - 从 .xls 文件中读取图像及其位置的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32795947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com