这就是我想要实现的......输出可以打印在IDE的控制台上而不是excel本身
Iterator<Row> iterator = firstSheet.iterator();
List<Double> posValue = new ArrayList<Double>();
List<Double> negValue = new ArrayList<Double>();
while(iterator.hasNext())//goes down the row, until there is nothing
{
Row nexRow = iterator.next();
if(nexRow.getRowNum()!=0){
value = nexRow.getCell(3).getNumericCellValue();
if(value>0){
posValue.add(value);
}
else if(value <0){
//System.out.println("ehre");
negValue.add(value);
}
}
Iterator<Double> pIterator = posValue.iterator();
Iterator<Double> nIterator = negValue.iterator();
for(int i = 0; i<posValue.size();i++){
for(int j=0; j<negValue.size(); j++){
//System.out.println(negValue.get(j));
result= posValue.get(i)+negValue.get(j);
}
}
if(result==0){
System.out.println(result+" "+nexRow.getRowNum());
}
workbook.close();
inputStream.close();
}
我想到了这一点,因为我必须根据他们的标志来计算价值并使其为零。
答案 0 :(得分:0)
您需要使用某种循环迭代行。这应该对你有帮助。
public static void main(String[] args) throws IOException {
String excelFilePath = "Book1.xlsx";
FileInputStream inputStream = new FileInputStream(new File(excelFilePath));
Workbook workbook = new XSSFWorkbook(inputStream);
XSSFSheet firstSheet = (XSSFSheet) workbook.getSheetAt(0);
Iterator<Row> iterator = firstSheet.iterator();
iterator.next();// skip the header row
Double result = 0.0;
while (iterator.hasNext()) {
Row nextRow = iterator.next();
result += nextRow.getCell(0).getNumericCellValue();
}
System.out.println(result);
workbook.close();
inputStream.close();
}
Excel doc。
答案 1 :(得分:0)
TextBlock
}
这是我想要实现的目标。它将使行为零,可以操作值。 @Piyush