So lesen Sie einen Wert aus dem Spaltennamen in Excel in JavaJava

Java-Forum
Anonymous
 So lesen Sie einen Wert aus dem Spaltennamen in Excel in Java

Post by Anonymous »

Wie kann ich einen Wert lesen, der sich auf bestimmte Spaltennamen mit Apache -POI in Excel (XLSX) bezieht. />
Unten ist das Excel -Blatt < /p>

Hier i, wenn Spaltennamen als "Namen" eingeben, sollte es den Wert "jose"
und "Alter" zurückgeben.

Code: Select all

public static void main(String[] args) throws Exception {

File file =    new File("D:\\xcel.xlsx");
FileInputStream inputStream = new FileInputStream(file);

Workbook wb = new XSSFWorkbook(inputStream);
Sheet sh = wb.getSheet("Sheet1");

//  Find the Column number Which has column name and row number 0

Row row1 = sh.getRow(0);
int colNum = -1;
for (int i = 0 ;i  In diesem folgenden Code erhalte ich keinen Fehler < /p>

, aber wenn mein Spaltenname in der letzten Zelle vorhanden ist, dann sollte meine Spaltennummer gleich sein, aber ich erhalte meine Spaltennummer weniger als die letzte Zellnummer. zum ersten Code auch < /p>

public static void main(String[] args) throws Exception {

File file =    new File("D:\\xcel.xlsx");
FileInputStream inputStream = new FileInputStream(file);

Workbook wb = new XSSFWorkbook(inputStream);
Sheet sh = wb.getSheet("Sheet1");

//  Find the Column number Which has column name and row number 0

Row row1 = sh.getRow(0);

int colNum = -1;
for (Cell cell : row1) {
if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
if (cell.getRichStringCellValue().getString().trim().equals("Employee")) {
colNum =  cell.getColumnIndex();                                   }
}
}

//  Find the Row number Which is "Y" and column number 1

int rowNum = -1;
for (Row row : sh) {
for (Cell cell : row) {
if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
if (cell.getRichStringCellValue().getString().trim().equals("Y")) {
rowNum =  row.getRowNum();                                     }
}
}
}

// Get the required value
Row r = sh.getRow(rowNum);
String val = r.getCell(colNum).getStringCellValue();

System.out.println("Row number is "+rowNum);
System.out.println("Last row number :"+sh.getLastRowNum());
System.out.println("Column number is "+colNum);
System.out.println("Last Column number :"+sh.getRow(0).getLastCellNum());
System.out.println("Value is "+val);

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post