• jQuery文件分片上传


    前端代码:
    <input type="file" id="file6" multiple>
    <button type="button" class="btnFile6">分片上传6</button>
    <div class="result"></div>
    //方式6
     $(".btnFile6").click(function () { 
         var upload = function (file, skip) {
             var formData = new FormData();//初始化一个FormData对象
             var blockSize = 1000000;//每块的大小
             var nextSize = Math.min((skip + 1) * blockSize, file.size);//读取到结束位置             
             var fileData = file.slice(skip * blockSize, nextSize);//截取 部分文件 块
             formData.append("file", fileData);//将 部分文件 塞入FormData
             formData.append("fileName", file.name);//保存文件名字
             $.ajax({
                 url: "/Home/SaveFile6",
                 type: "POST",
                 data: formData,
                 processData: false,  // 告诉jQuery不要去处理发送的数据
                 contentType: false,   // 告诉jQuery不要去设置Content-Type请求头
                 success: function (responseText) {
                     $(".result").html("已经上传了" + (skip + 1) + "块文件");
                     if (file.size <= nextSize) {//如果上传完成,则跳出继续上传
                         alert("上传完成");
                         return;
                     }
                     upload(file, ++skip);//递归调用
                 }
             });
         };
    
         var file = $("#file6")[0].files[0];
         upload(file, 0);
     }); 
    

      

    后台代码:
    public string SaveFile6()
    {
        //保存文件到根目录 App_Data + 获取文件名称和格式
        var filePath = Server.MapPath("~/App_Data/") + Request.Form["fileName"];
        //创建一个追加(FileMode.Append)方式的文件流
        using (FileStream fs = new FileStream(filePath, FileMode.Append, FileAccess.Write))
        {
            using (BinaryWriter bw = new BinaryWriter(fs))
            {
                //读取文件流
                BinaryReader br = new BinaryReader(Request.Files[0].InputStream);
                //将文件留转成字节数组
                byte[] bytes = br.ReadBytes((int)Request.Files[0].InputStream.Length);
                //将字节数组追加到文件
                bw.Write(bytes);
            }
        }
        return "保存成功";
    }
    

      

  • 相关阅读:
    自增主键强制修改
    网页速度优化
    JS 获取字符串长度, 区别中英文
    SQL时间相关 SQL日期,时间比较
    关于document.cookie的使用
    php文件头部空白影响CSS布局 2
    FlvPlayer 播放器代码
    JAVA——继承、多态、重载和重写转
    JS星级评分,带提示(转)
    web 启动 本地应用程序 Activity
  • 原文地址:https://www.cnblogs.com/fjzhang/p/7227401.html
Copyright © 2020-2023  润新知