次のコードブロックがあります。
File file = new File("myFile.xlsx"); // my file
inputStream = new FileInputStream(file);
System.out.println("reading");
XSSFWorkbook wb = new XSSFWorkbook(inputStream);
XSSFSheet sh = wb.getSheetAt(0); // first sheet
Iterator rowIter = sh.rowIterator();
while(rowIter.hasNext()){ // iterate over all rows
System.out.println("New Row "); // notify of new row
Row myRow = (Row) rowIter.next();
Iterator cellIter = myRow.cellIterator();
while(cellIter.hasNext()){ // iterate over all cells in row
XSSFCell myCell = (XSSFCell) cellIter.next();
//how can I check that myCell has an image?
//(I'm expecting it to be in the fourth cell each time)
System.out.print(" " + myCell); // output cell content on same line
}
}
inputStream.close();
Apache POI を使用して .xlsx ファイルを読み込んでいます。各行には、ユーザーが貼り付けた画像を含むセルを含めることができます。
画像を取得してbase64にエンコードしたいと思っています。スプレッドシートを繰り返し処理しているときに、セルに画像が含まれているかどうかを確認するにはどうすればよいですか?
私はすでにhttp://poi.apache.org/spreadsheet/quick-guide.html#Imagesを読んだことがありますが、それは最初にすべての画像を取得してからそれらを繰り返し処理することを扱っています。セルを反復処理して画像を確認したいと思います。