java 读取并保存excel中的图片
/*
* 保存excel中的图片(以文件形式保存,或者存入数据库)
*
* basePath:应用所在路径,附件存放路径:
* 参数:is是上传的附件文件流
*/
public void saveSheetImgByFile(String basePath,InputStream is) throws ParseException {
FileOutputStream os = null;
try {
Workbook wbk = Workbook.getWorkbook(is);
//建文件目录
File mkFile = new File(basePath);
if (!mkFile.exists() && !mkFile.isDirectory()) {
mkFile.mkdirs();
}
// 循环所有sheet
for (int k = 0; k < wbk.getNumberOfSheets(); k++) {
Sheet sheet = wbk.getSheet(k);
// 共有多少行
int imgNumber = sheet.getNumberOfImages();// 获得sheet所包含的图片数
// 循环sheet的所有图片
for (int i = 0; i < imgNumber; i++) {
Image image = sheet.getDrawing(i);
byte[] imageD
相关文档:
Java面向对象编程-6.3 方法覆盖(Override)假如有100个类,分别为Sub1,Sub2…Sub100,它们的一个共同行为是写字,除了Sub1类用脚写字外,其余的类都用手写字。可以抽象出一个父类Base,它有一个表示写字的方法write(),那么这个方法到底如何实现呢?从尽可能提高代码可重用性的角度看,write()方法应该采用适用于大 ......
Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。他们的关系为:
并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执行,Executor.execute(Runnal ......
Java对象类型转换时Java开发中经常遇到的,本文向您介绍Java对象类型转换的一些技巧和注意事项,包括向上转型与向下转型都操作和主要点。
一、向上转型与向下转型。
对象类型的转换在Java语言平台中经常遇到,主要包括向上转型与向下转型操作。程序开发人员需要熟练 ......
要想解决“脏数据”的问题,最简单的方法就是使用synchronized关键字来使run方法同步,代码如下:
public synchronized void run()
{
}
从上面的代码可以看出,只要在void和public之间加上synchronized关键字,就可以使run方法同步,也就是说,对于同一个Java类的对象实例,run方法同 ......