zoukankan      html  css  js  c++  java
  • 使用cos组建上传文件

    需要的文件:cos_2008.jar或者更高版本

    1、如果是需要将文件上传到服务器的磁盘上进行保存的操作方法:

    int fileSize = 10;//文件最大允许10M
    String savePath = "xxx";//文件的保存目录
    
    MultipartRequest multiRequest = new MultipartRequest(request, savePath,
                        fileSize * 1024 * 1024, "GBK", new UUIDFileRenamePolicy());//这里使用了文件进行判断,如果存在相同的文件名则使用uuid生成一个随机文件名
    
    File mappingFile = multiRequest.getFile("myfile");//myfile:前台file上传组建的name
    
    //如果存在这个名称的文件新旧文件名的名字就不相同
    String newFileName = mappingFile.getName();
    String oldFileName = multiRequest.getFilesystemName("myfile"); 
    System.out.println("上传的原始文件名:" + oldFileName + ",新文件名:"+ newFileName);

    2、如果只是需要读取上传的文件而不需要保存到磁盘:

        int fileSize = 10;
    
            try {
                MultipartParser mp = new MultipartParser(request,fileSize * 1024 * 1024);
                Part part;
                //遍历请求中的所有表单(因为只有一个文件,所以不需要while循环)
                if((part=mp.readNextPart())!=null){
              //if(part.isParam()) //普通参数
                     if(part.isFile()){//是文件
                         FilePart fp = (FilePart)part;
                         String fileName = fp.getFileName();
                         if (fileName.endsWith("csv") || fileName.endsWith("CSV")) {
                            InputStream is = fp.getInputStream();
                             
                            List uploadData = this.xxService
                                .readCsvFile(is);
                            if (null == uploadData || uploadData.size() == 0) {
                                msg = "上传失败,该csv文件里没有数据!";
                                isOk = false;
                            } else {
                                List dataList = this.xxService
                                        .getStoreListWithInCsv(uploadData);
                                request.getSession().setAttribute("uploadStoreList",
                                        dataList);
                            }
                         }else {
                            msg = "上传失败,文件格式错误!请选择csv格式的文档!";
                            isOk = false;
                        }
                     }else{
                        msg = "上传失败,请选择需要上传的文件再操作!";
                        isOk = false;
                     }
                }else{
                    msg = "上传失败,请选择需要上传的文件再操作!";
                    isOk = false;
                }
            } catch (Exception e) {
                msg = "上传失败,系统异常,请检查文件大小是否超过" + fileSize + "M!";
                isOk = false;
                log.error(e.getMessage(), e);
            }     
  • 相关阅读:
    C# TcpServer调试工具
    C#调用百度AI开发平台
    MVC 身份证图像识别(调用dll)
    12.智能快递柜(其他功能)
    智能信报箱
    北斗卫星短信平台
    11.智能快递柜(用户寄件)
    WindowServer优化
    13.智能快递柜(对接流程)
    sublime text3 手动安装插件package control
  • 原文地址:https://www.cnblogs.com/yangzhilong/p/2992917.html
Copyright © 2011-2022 走看看