私はApache POIで作業しており、このコードを使用しています:
private void remove() {
HSSFWorkbook wb = null;
HSSFSheet sheet = null;
try {
FileInputStream is = new FileInputStream("C:/juni.xls");
wb = new HSSFWorkbook(is);
sheet = wb.getSheetAt(0);
for (Row row : sheet) {
for (Cell cell : row) {
if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
if (cell.getRichStringCellValue().getString().trim().contains("POST")) {
row_count_post_1 = row.getRowNum();
DashBoard.txt.setText("Processed the STRING \"POST\" on Row#" + row_count_post_1);
HSSFRow removingRow = sheet.getRow(row_count_post_1);
if (removingRow != null) {
sheet.removeRow(removingRow);
}
int lastIndex = sheet.getLastRowNum();
sheet.shiftRows(row_count_post_1 + 1, lastIndex, -1);
} else {
break;
}////////////want to break from here;
}
}
}
} catch (Exception e) {
//do catch for no exception
}
}
if
問題は、ステートメントが機能しなくなったときにループから抜け出したいということです。my を使用しなければ、すべて正常に動作していますelse
。実際、このコードが文字列を見つけられない場合は停止する必要がありますが、私の場合、else は突然 if で機能し、この場合は 1 回の反復のみが行われます。私が間違っていることを教えてください。全体的なヘルプではなくヒントが必要です。前もって感謝します