在我们开发网站的过程中,如果用户上传的文件过大,由于考虑到服务器带宽问题,我们经常会在用户体验的界面中让他下载压缩后的文件,那么如何将用户传上去的文件实现在线压缩呢?不仅如何,你还可以通过SMB协议实现远程文件在线压缩(因为在大型网站中,Web集群服务器与文件服务器一般都是分开的),以下代码可以帮您实现:
//打包网络上的zip文件
public void zip(String zipFileName,String filepath,String username,String pwd)throws Exception{
SmbFile f=new SmbFile("smb://"+username+":"+pwd+"@"+filepath);
zip(zipFileName,username,pwd,f);
}
//打包网络文件上的多个文件或者文件夹
public void zip(String zipFileName,String[] filepaths,String username,String pwd)throws Exception
{
String str="smb://"+username+":"+pwd+"@"+zipFileName;
ZipOutputStream out=new ZipOutputStream(new SmbFileOutputStream(str));
for(int i=0;i<filepaths.length;i++)
{
SmbFile inputFile=new SmbFile("smb://"+username+":"+pwd+"@"+filepaths[i]);
zip(out,inputFile,"");
}
System.out.println("zip done");
out.close();
}
public void zip(String zipFileName,String username,String pwd,SmbFile inputFile)throws Exception{
String str="smb://"+username+":"+pwd+"@"+zipFileName;
ZipOutputStream out=new ZipOutputStream(new SmbFileOutputStream(str));
zip(out,inputFile,"");
System.out.println("zip done");
out.close();
}
分享到:
相关推荐
本批处理能实现自动压缩上个月的文件并上传
如果服务器上安装了RAR程序,那么asp.net可以调用RAR实现文件压缩与解压缩。 不过要注意的是,由于Web程序不能直接调用客户端的程序(除非用ActiveX,ActiveX几乎被废弃),所以如果要想实现让用户把本地文件用网页...
它提供了类windows经典用户界面,一整套在线文件管理、文件预览、编辑、上传下载、在线解压缩、音乐播放功能。让你直接在浏览器端实现web开发、源码文件预览、网站部署的同时拥有与本地操作一样方便、快捷、安全的...
Delphi XE8开发的文件上传服务程序(Web Server Application),ISAPI,通过IIS发布,由于一直没解决文件名为中文时乱码问题(能力有限,参考了网上一些资料,最终还是没解决),所以先把要上传的文件压缩为cab文件...
(1)将上传目录和上传文件设置为不可执行, 杜绝脚本执行。 (2)应保证服务器安全,避免文件解析漏洞。 2. 在服务端对上传文件进行检查: (1)使用白名单控制上传文件类型,即只允许指定扩展名的文件上传。 (2)...
如何从本机向Web服务器上传文件 VC 源码
基于springboot与vue.js开发的前后端分离的超大文件分片上传下载系统,拥有简洁漂亮的界面,实现了G级别文件极速上传下载,断点续传以及秒传功能
以及文件的新建、重命名、移动、拷贝、删除、在线编辑、预览、上传与下载; ◆ 特 点 ◆ 1、以树型形式浏览站点目录。 2、文件列表支持排序。 3、可上传压缩文件(*.zip),上传当指定目录后自动解压。 4、可...
在移动Web蓬勃发展的今天,有太多太多的应用需要让用户在移动Web上传图片文件了,正因如此,我们有些困难必须去攻克: 低网速下上传进度缓慢,用户体验差 高并发下,后台处理较大的上传文件压力大 或许有更多...
手机上传图片到服务器时,如果是大文件图片肯定会很慢而且费流量,用户体验不好。本人用html5的canvas解决了这个问题,好东西一定要分享
Layui图片上、视频、音频、文件上传接口及跨域上传,此项目案例包含了多种上传方式,欢迎大家下载
它提供了一个Web UI,可以通过界面管理存储桶和对象。 可扩展性:Minio可以轻松地扩展到多个节点,以提供高可用性和容错能力。它支持多种部署模式,包括单节点、主从复制和集群等。 高可用性:Minio提供了多种机制...
本程序是基于J2EE的struts框架,利用了JNI技术实现了调用了由C++编写的哈夫曼压缩算法。程序本身为的是实现发送文件,并在发送过程中将要被发送的文件进行压缩。 并且客户端可以对其解压缩。要用到MYSQL数据库
《Java.Web整合开发王者归来.JSP.Servlet》 【324M】高清PDF,下了不后悔,由于本人上传权限有限,只能最大上传70M,所以不得已只能分5卷压缩,看清楚再下载,一共5卷压缩包,总共需要3分(第一卷3分,其他卷0分),...
网络传输文件过程中,如果文件过大将会影响文件传送的效果和速度,如果将文件压缩之后再上传,不但可以提高传送速度,还可以节省大量的时间。本实例通过asp.net web应用程序中实现了文件的在线压缩功能。 本实例主要...
.net web api与前端节后的文件上传,后台接受,完整版,压缩包包含2个部分,前端和后台,打开直接运行。vs2015及以上。
该工程基于 .net framework 4.6.1 mvc 开发! 实现大文件分片上传,实时上传进度条! 上传图片并生成缩略图片!
请参考:http://blog.csdn.net/dwj901125/article/details/23701063 这里有相当详尽的实现过程。
(8)具体效果请看http://blog.csdn.net/hbccgg/archive/2011/04/29/6371080.aspx (9)压缩文件为Eclipse源文件,请发布到Web服务器上运行 (10)在Tomcat7.0环境开发。若要支持Tomcat6.0以下版本,请在WEB-INF\...
压缩文件包含了android端和web端,web端使用myeclipse8.5开发的,ssh框架。android端使用androidstudio2.0开发的,采用了xutils与web端进行网络通信。demo版本,所以界面很简单,只是简单的实现了功能。导进android...