0
我知道如何從excel xls/xlxs讀取數據。現在我的要求是我必須使用POI 3.8從excel文件讀取圖像和數據。你能指導我如何做到這一點。 讀取圖像和數據都來自一個excel文件提前使用POI ....謝謝使用poi從excel文件讀取圖像和數據
我知道如何從excel xls/xlxs讀取數據。現在我的要求是我必須使用POI 3.8從excel文件讀取圖像和數據。你能指導我如何做到這一點。 讀取圖像和數據都來自一個excel文件提前使用POI ....謝謝使用poi從excel文件讀取圖像和數據
List lst = workbook.getAllPictures();
for (Iterator it = lst.iterator(); it.hasNext();) {
PictureData pict = (PictureData)it.next();
String ext = pict.suggestFileExtension();
byte[] data = pict.getData();
if (ext.equals("jpeg")){
FileOutputStream out = new FileOutputStream("pict.jpg");
out.write(data);
out.close();
}
}
RTM :)
XSSFSheet mySheet1 = workbook.getSheetAt(0);
Iterator<Row> rowIterator1 = mySheet1.iterator();
if(rowIterator1.hasNext())
{
rowIterator1.next();
}
int pcount=1;
Iterator<XSSFPictureData> it = lst.iterator();
for (int i=0; i<lst.size(); i++)
{
Row row = rowIterator1.next();
// PictureData pict = (PictureData)it.next();
PictureData pict = (PictureData)lst.get(i);
String ext = pict.suggestFileExtension();
byte[] data = pict.getData();
String studentName = row.getCell(3).getStringCellValue();
int age =(int)row.getCell(14).getNumericCellValue();
int year = (int)row.getCell(16).getNumericCellValue();
System.out.println(studentName+":"+age+":"+year);
FileOutputStream out = new FileOutputStream("D:\\excel\\RPC\\"+pcount+"."+year+"."+age+".png");
out.write(data);
out.close();
pcount++;
rowIterator1.hasNext();
}
}
感謝,但其只對我的圖片想要從文件中讀取其他數據,就像我有一個文件,其中我有一個人的圖片和它的名字,電子郵件,地址和電話號碼,我有100個記錄像DIS,所以我想讀取圖片和其餘數據爲well workbook.getAllPic tures()會給我所有的圖片 –
我建議閱讀開發者指南,然後,如果你已經這樣做了,發佈你已經嘗試過的東西。 – GaryF
我已經做了。我已經嘗試了這個代碼以及它的工作,但我的要求是讀取數據和圖片。我認爲你沒有得到我的觀點 –