工作中发现有一个功能不好使,虽然公司框架有上传功能,但是不适用,所以自己写了一个简单的样例,部分代码如下:
? ? ? ?
class="java" name="code"> //获取文件minetype使用 FileNameMap fileNameMap = URLConnection.getFileNameMap(); File file=null; InputStream is = null; //多张图片,fjpsth是图片路径 for(int i=0;i<fjpsth.length;i++){ file = new File(fjpsth[i]); //获取图片名称 String name = file.getName(); //获取图片minetype String type = fileNameMap.getContentTypeFor(fjpsth[i]); //把文件转换成字节数组 is = new FileInputStream(file); long length = file.length(); if (length > Integer.MAX_VALUE) { throw new IOException("File is to large "+file.getName()); } byte[] bytes = new byte[(int)length]; int offset = 0; int numRead = 0; while (offset < bytes.length && (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) { offset += numRead; } if (offset < bytes.length) { throw new IOException("Could not completely read file "+file.getName()); } //插入数据库 ………… } is.close();
?