hssfcell.cell_type_string
时间: 2023-04-28 12:02:16 浏览: 203
hssfcell.cell_type_string是一个方法,用于获取单元格的数据类型字符串。例如,如果单元格中的数据类型为数字,则返回字符串"NUMERIC"。如果单元格中的数据类型为字符串,则返回字符串"STRING"。
相关问题
poi的Cell.CELL_TYPE_PICTURE 在java中不存在 如何引用
确实在 Java 中,POI 的 Cell 类中并没有 CELL_TYPE_PICTURE 常量。不过,你可以使用以下代码来检查单元格是否包含图片:
```java
if(cell.getCellType() == CellType.BLANK) {
// 空单元格
} else if(cell.getCellType() == CellType.NUMERIC) {
// 数字类型单元格
} else if(cell.getCellType() == CellType.STRING) {
// 字符串类型单元格
} else if(cell.getCellType() == CellType.BOOLEAN) {
// 布尔类型单元格
} else if(cell.getCellType() == CellType.FORMULA) {
// 公式类型单元格
} else if(cell.getCellType() == CellType.ERROR) {
// 错误类型单元格
} else if(cell.getCellType() == CellType._NONE) {
// 未知类型单元格
} else if(cell.getCellType() == CellType._CUSTOM) {
// 自定义类型单元格
} else {
// 如果以上类型都不是,则可以认为单元格包含图片
}
```
如果单元格包含图片,可以通过以下代码来获取图片:
```java
if(cell.getCellType() == CellType._NONE) {
// 未知类型单元格,可能包含图片
if(cell instanceof HSSFCell) {
HSSFPictureData pictureData = ((HSSFCell) cell).getSheet().getWorkbook().getAllPictures().get(((HSSFPicture) ((HSSFCell) cell).getCellValue()).getPictureIndex()-1);
byte[] byteData = pictureData.getData();
// 处理图片数据
} else if(cell instanceof XSSFCell) {
XSSFDrawing drawing = ((XSSFCell) cell).getSheet().createDrawingPatriarch();
for(XSSFShape shape : drawing.getShapes()) {
if(shape instanceof XSSFPicture) {
XSSFPicture picture = (XSSFPicture) shape;
if(picture.getCTPicture().getBlipFill() != null) {
byte[] byteData = picture.getPictureData().getData();
// 处理图片数据
}
}
}
}
}
```
请注意,这里需要判断单元格类型是否为 _NONE,因为只有这种类型的单元格才可能包含图片。
java中cell.getCellType()
cell.getCellType() 是 Java 中 HSSFCell 类的一个方法,用于获取单元格的数据类型。
它返回一个整数值,表示单元格中数据的类型。常见的返回值有以下几种:
- 0:CELL_TYPE_NUMERIC,数值类型
- 1:CELL_TYPE_STRING,字符串类型
- 2:CELL_TYPE_FORMULA,公式类型
- 3:CELL_TYPE_BLANK,空类型
- 4:CELL_TYPE_BOOLEAN,布尔类型
- 5:CELL_TYPE_ERROR,错误类型
你可以使用它来判断单元格中存储的数据类型,并根据需要进行相应的处理。
阅读全文