java 读取文件并存入数据库

在已有框架下解决文件上传问题,通过代码示例详细解释了如何获取文件类型、读取文件内容并进行数据库插入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

工作中发现有一个功能不好使,虽然公司框架有上传功能,但是不适用,所以自己写了一个简单的样例,部分代码如下:

       

           //获取文件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();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值