我正在尝试创建一个程序,它从图像中读取红色值并使用Apache POI将数据存储到excel中,这样我就可以用它创建一个直方图。但是,当我尝试将信息传递给excel时,我会在数组中获得nullPointerException
。
数组中的值取自存储图像的所有rgb值的2d数组。我检查了数组,并将值存储在其中。
你们中的任何人都知道会导致这个错误的原因吗?
数组声明为:
static int[] redArray = new int[255];
以下是我用于将数据存储到excel中的代码。错误发生在cell.setCellValue(redArray[y]);
public static void chart() throws IOException {
FileInputStream file = new FileInputStream(new File("chart.xlsx"));
// Finds the workbook instance for XLSX file
XSSFWorkbook myWorkBook = new XSSFWorkbook(file);
// Return first sheet from the XLSX workbook
XSSFSheet mySheet = myWorkBook.getSheetAt(0);
// HSSFWorkbook workbook = new HSSFWorkbook(file);
// HSSFSheet sheet = workbook.getSheetAt(0);
// Sheet sheet=(Sheet) workbook.getSheetAt(0);
Cell cell = null;
// Update the value of cell
for (int i = 1, y = 0; i < 255 && y < 255; i++, y++) {
cell = mySheet.getRow(1).getCell(i);
cell.setCellValue(redArray[y]);
System.out.println("asdasd");
}
file.close();
FileOutputStream outFile = new FileOutputStream(
new File("update2.xlsx"));
myWorkBook.write(outFile);
outFile.close();
myWorkBook.close();
}
感谢您的帮助。