ниже - мой код, скопированный где-то в Интернете, используемый для копирования файла изображения в рабочий лист excel.POI вставить фотографию в excel, но с ошибкой
, но он имеет ошибку при запуске оператора "int my_picture_id = my_workbook.addPicture (bytes, Workbook.PICTURE_TYPE_JPEG);" с ошибкой «Исключение в потоке "основного" java.lang.NoClassDefFoundError:
орг/Apache// кодек фонда/Digest/DigestUtils на org.apache.poi.hssf.usermodel.HSSFWorkbook.addPicture (HSSFWorkbook.java:1610) at Addphoto.main (Addphoto.java:19) "
Я не могу найти причину, так как я действительно новичок в java. Пожалуйста, помогите решить эту проблему.
import java.io.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.*;
import org.apache.poi.util.IOUtils;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
public class Addphoto {
public static void main(String[] args) throws Exception{
HSSFWorkbook my_workbook = new HSSFWorkbook();
HSSFSheet my_sheet = my_workbook.createSheet("MyBanner");
InputStream my_banner_image = new FileInputStream("C:/path/123.jpg");
byte[] bytes = IOUtils.toByteArray(my_banner_image);
int my_picture_id = my_workbook.addPicture(bytes, Workbook.PICTURE_TYPE_JPEG);
my_banner_image.close();
HSSFPatriarch drawing = my_sheet.createDrawingPatriarch();
ClientAnchor my_anchor = new HSSFClientAnchor();
my_anchor.setCol1(2);
my_anchor.setRow1(1);
HSSFPicture my_picture = drawing.createPicture(my_anchor, my_picture_id);
my_picture.resize();
FileOutputStream out = new FileOutputStream(new File("C:/path/uploadphoto-test.xls"));
my_workbook.write(out);
out.close();
}
}