没时间解释了,快上车...

前端js:

upload=function () { if(window.FormData) { var fileslist=$("input[type='file']"); if(fileslist.length>0) { if(fileslist.get(0).files[0]!=undefined) { var Thefile=fileslist.get(0).files[0]; UpdateProgressBar(0,"正在压缩..."+"0%"); var zip=new JSZip(); zip.file(Thefile.name, Thefile); zip.generateAsync({type:"Blob",compression: "DEFLATE",},function updateCallback(metadata){UpdateProgressBar(metadata.percent.toFixed(2),"正在压缩..."+metadata.percent.toFixed(2)+"%");}).then(function(content) //级别:1最快,9最小 { var file = new File([content],'upload.zip',{type: "zip"}); var dict=new FormData(); dict.append("fileContent",file); var xhr=new XMLHttpRequest(); xhr.open('POST', USERNAME+";"+obj+";"+date+";"+startTime+";"+endTime,true); xhr.upload.onprogress=function(event) { if(event.lengthComputable) { UpdateProgressBar((event.loaded / event.total * 100 | 0),"正在上传..."+(event.loaded / event.total * 100 | 0)+"%"); if((event.loaded / event.total * 100 | 0)>=100) { hideUploadProgressBar(); } } } xhr.send(dict); }); } } } }

有一说一:博客园这些个编辑器是要逼死强迫症吗?

后台c#

HttpListenerContext nowContext = MainHttpListener.EndGetContext(ar); HttpListenerRequest request = context.Request; MemoryStream ms = new MemoryStream(); request.InputStream.CopyTo(ms); var buff = ms.ToArray(); var msg = System.Text.Encoding.ASCII.GetString(buff); sec2 = msg; int index = sec2.IndexOf("PK");//压缩包文件PK开头 string front = sec2.Substring(0, index); List<byte> A = new List<byte>(); A.AddRange(buff); List<byte> B = new List<byte>(); B.AddRange(System.Text.Encoding.ASCII.GetBytes(front)); A.RemoveRange(0, B.Count); byte[] writeBytes = A.ToArray();//此为文件字节,File.WriteAllByte()存为zip,便可以了,可正常解压; ConsoleUserColor.SetColorText("文件接收成功");

利用Zip.js压缩并上传文件,后端使用.Net(Winform)接收转存的更多相关文章

  1. js实现分段上传文件

    使用js实现分段上传文件,本文使用了FileReader对象,可参考:https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader 1)获取文 ...

  2. HTML5 file API加canvas实现图片前端JS压缩并上传

    一.图片上传前端压缩的现实意义 对于大尺寸图片的上传,在前端进行压缩除了省流量外,最大的意义是极大的提高了用户体验. 这种体验包括两方面: 由于上传图片尺寸比较小,因此上传速度会比较快,交互会更加流畅 ...

  3. 利用jquery.form实现异步上传文件

    实现原理 目前需要在一个页面实现多个地方调用上传控件上传文件,并且必须是异步上传.思考半天,想到通过创建动态表单包裹上传文件域,利用jquery.form实现异步提交表单,从而达到异步上传的目的,在上 ...

  4. js压缩图片上传插件localResizeIMG

    示例 /** * 本地图片压缩后上传 */ $("#vfile").change(function(){ var _this = $(this); lrz(this.files[0 ...

  5. js 压缩图片 上传

    感谢,参考了以下作者的绝大部分内容 https://blog.csdn.net/tangxiujiang/article/details/78755292 https://blog.csdn.net/ ...

  6. js无刷新上传文件

    传统的文件上传方式 <form action="" method="POST" enctype="multipart/form-data&quo ...

  7. Nodejs学习笔记(八)--- Node.js + Express 实现上传文件功能(felixge/node-formidable)

    目录 前言 formidable简介 创建项目并安装formidable 实现上传功能 运行结果 部分疑惑解析 写在之后 前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能---- ...

  8. JS 异步分段上传文件

    为了解决大文件上传 (PHP上传最大限制2GB) 同时为了解决文件上传是对服务器造成的压力 可以通过分段上传解决这个问题,这得益于HTML5开发的file API 前台代码: 引用了进度条插件myPr ...

  9. Nodejs学习笔记(八)—Node.js + Express 实现上传文件功能(felixge/node-formidable)

    前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能----文件上传,示例以一个上传图片的功能为例子 上传功能命名用formidable实现,示例很简单! PS:最近比较忙,距上一次 ...

  10. c#+js 使用formdata上传文件

    如果不是使用form表单submit的形式,我们可以手动通过formdata传值(针对文件上传等) 比如: <html> <head> <meta name=" ...

随机推荐

  1. java开发的配置文件配置到数据库(配置到配置文件里面个人感觉修改较麻烦,故配置到数据库)

    配置文件的创建表sql CREATE TABLE `checkwork_tab_properties` ( `id` varchar(50) NOT NULL COMMENT '主键id', `typ ...

  2. Auto.Core

    Auto Core (基于AspectCore) 介绍 AutoCore是基于 .Net Standard 2.1用于简化 ASP.NET Core开发,AutoCore 在 AspectCore 的 ...

  3. 2023ccpc大学生程序设计竞赛-wmh

    这算是我第一次参加这种团队赛,感谢程老师给我这个机会.刚开赛还算比较顺利,一眼看出来A是个签到,拿下之后开始跟榜F题.一开始想法比较简单,就是排序,记录相邻两个数的差,然后再排序.wa了后以为是范围出 ...

  4. 【持续更新】C/C++ 踩坑记录(一)

    未定义行为之 NULL dereference 下面这段代码中 is_valid() 解引用了空指针 str,我们的直觉是编译运行后将迎来 SIGSEGV,然而事情并非所期望的那样. /* * ub_ ...

  5. grafana Variables 变量的使用

    概念澄清 A variable is a placeholder for a value. # 变量是值的占位符. # 参考文档:https://grafana.com/docs/grafana/la ...

  6. Django: 后台常用操作

    指定状态码 return JsonResponse(data, status=201) Djano删除数据库 删除对应数据库后,删除对应文件 删除对应的记录 Django后台管理 创建超级管理员 py ...

  7. Flask工厂模式蓝图使用Celery实例【亲测可用,已应用于项目中】

    单一模式运行Celery在官方文档中已经贴出范例代码,这里我们不过多介绍. 在使用Flaks编写大型项目时,使用工厂模式的好处显而易见.因在Celery4.x以上版本已经抛弃了init_app方法,所 ...

  8. 如何用 ModelScope 实现 “AI 换脸” 视频

    前言 当下,视频内容火爆,带有争议性或反差大的换脸视频总能吸引人视线.虽然 AI 换脸在市面上已经流行了许久,相关制作工具或移动应用也是数不胜数.但是多数制作工具多数情况下不是会员就是收费,而且替换模 ...

  9. iptables基础

    简介 Linux防火墙主要工作在网络层,针对TCP/IP数据包实施过滤和限制.iptables是linux防火墙的管理程序,为包过滤机制的实现制定规则,并告诉内核空间的netfilter如何处理这些网 ...

  10. quarkus依赖注入之十一:拦截器高级特性上篇(属性设置和重复使用)

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇是<quarkus依赖注入> ...