Java导入&导出图片
实现步骤:
导入图片压缩包
- 1.获取上传压缩包解压遍历为单个文件
- 2.定义图片存储目录 (Linux和win目录不同)
- 3.遍历图片File存储到指定目录
- 4.后台异步任务上传图片到服务器,生成UUID存储到数据库 (根据自己项目情况)
//图片存储目录 Linux路径:/opt/student_enlist
private String saveRootDirectory = "D:\\student_enlist";
//创建文件夹
File file1 = new File(saveRootDirectory);
if (!file1.exists() && !file1.isDirectory()) {
file1.mkdir();
}
/**
* 获取压缩包里面的文件
*
* @param file 上传的压缩文件
* @return
* @throws Exception
*/
private Map<String, Object> readZipFile(File file) throws Exception {
ZipFile zf = new ZipFile(file);
Enumeration<ZipEntry> entries = (Enumeration<ZipEntry>) zf.entries();
while (entries.hasMoreElements()) {
//获取一个文件对象
ZipEntry zipEntry = (ZipEntry) entries.nextElement();
InputStream read = zf.getInputStream(zipEntry);
String fileUrl = zipEntry.getName();
// 判断是否为文件类型
if (fileUrl != null && fileUrl.indexOf(".") != -1) {
// 如果只读取图片,自行判断就OK.
String fileName = zipEntry.getName();
//创建图片到存储目录
File file = new File(saveRootDirectory +File.separatorChar+ fileName);
//判断图片是否已经存在
if (!file.exists()) {
//创建图片文件
file.createNewFile();
// 写入文件
BufferedOutputStream write = new BufferedOutputStream(