`
kongshanxuelin
  • 浏览: 925464 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

Web上传文件在线压缩的实现

阅读更多

在我们开发网站的过程中,如果用户上传的文件过大,由于考虑到服务器带宽问题,我们经常会在用户体验的界面中让他下载压缩后的文件,那么如何将用户传上去的文件实现在线压缩呢?不仅如何,你还可以通过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(); 
	} 
 
4
1
分享到:
评论
2 楼 phoenix007 2008-11-07  
挺有用的,自己想试试,拷贝代码发现找不到SmbFile,请问SmbFile哪个包中的类呢?
1 楼 7upCat 2008-10-16  

这个确实很有用.
不过我们之前做网上银行的一个功能中,用户可以上传批量转帐的文件,应该最大可以支持五W笔.
而上传的文件要几MB.这个采用服务器压缩是没有办法的,因为主要要考虑的是用户上传文件的时间不能太长.
于是只能要求客户要么你自己压缩再上传,然后整个处理的过程实现还是要按照异步的方式来进行.而且好像上传必须是ZIP格式...=.=!
要么,你就不压缩慢慢上传.别在乎浪费这点时间.....


哎,大数据量,企业开发永远的痛....

相关推荐

    layui实现文件压缩上传

    在本项目“layui实现文件压缩上传”中,我们重点关注的是如何利用layui的上传组件结合JavaScript技术来处理大图片的压缩,以优化文件上传性能和降低服务器存储负担。以下是对这个知识点的详细阐述: 1. **layui上传...

    delphi 上传文件至web服务器

    首先,我们需要理解标题"delphi 上传文件至web服务器"所涉及的核心技术。在Delphi中,我们可以利用HTTP协议与Web服务器进行通信,实现文件上传。HTTP协议的POST方法常用于此操作,而Web服务器通常会提供一个PHP、ASP...

    上传下载 发送 压缩 文件

    标题提到的“上传下载 发送 压缩 文件”涉及到了三个主要的技术领域:文件传输、文件压缩以及网络协议。接下来,我们将详细探讨这些知识点。 首先,文件传输是互联网应用的基础,其中涉及到的主要技术包括FTP(File...

    uniapp实现移动端上传文件功能

    uniAPP,作为一个跨端开发框架,为开发者提供了便捷的方式来实现移动端的文件上传功能。下面,我们将详细探讨如何在uniAPP中实现这一功能。 首先,我们需要了解uniAPP的基础知识。uniAPP是由DCloud(北京嘀嗒出行...

    FTP批处理-自动压缩上个月的文件并上传

    本批处理能实现自动压缩上个月的文件并上传

    asp.net调用RAR实现文件压缩与解压缩图文代码

    如果服务器上安装了RAR程序,那么asp.net可以调用RAR实现文件压缩与解压缩。 不过要注意的是,由于Web程序不能直接调用客户端的程序(除非用ActiveX,ActiveX几乎被废弃),所以如果要想实现让用户把本地文件用网页...

    上传并压缩图片文件

    这可能包含一个简单的Web应用程序,演示了如何将图片上传和压缩功能集成到一个工作流程中。 总的来说,"上传并压缩图片文件"是一个实用且常见的技术需求,涵盖了前端交互、后端处理、图片压缩算法以及文件操作等多...

    php文件在线压缩程序类.zip

    在处理文件操作,包括文件的压缩与解压缩时,PHP提供了内置的函数库,使得开发者能够方便地实现这些功能。...在实际项目中,结合合适的前端交互设计,可以构建出用户友好的文件压缩和下载功能,提高用户体验。

    webupload上传与下载文件,web实现文件上传下载,Java源码.zip

    5. 上传文件:WebUpload通过Ajax将文件分块发送到服务器。 6. 服务器接收:后端Java程序接收文件流,保存到指定位置。 三、Java后端处理文件上传 1. 创建MultipartResolver:Spring MVC框架中,我们需要配置一个...

    基于SpringBoot的文件上传系统,前后端分离,单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传

    基于SpringBoot的文件上传系统,前后端分离,单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传 项目经过严格测试,确保可以运行! 采用前后端分离的方式进行开发,实现了几种常用的文件上传功能...

    php多文件上传以及等比压缩

    在PHP中实现多文件上传和等比压缩是一项常见的任务,特别是在构建支持用户上传内容的Web应用时。这个功能可以用于照片分享、社交媒体平台或者任何需要处理用户上传图片的场景。以下是对这一技术的详细讲解: **多...

    java代码保存上传的文件_压缩图片

    Java 代码保存上传的文件_压缩图片是指在 Java web 应用程序中,如何保存上传的文件,并对其进行压缩处理。本代码使用了 Spring 框架的 MultipartFile 类来处理上传的文件,并使用 Java.awt 和 ...

    实现在线对文件及目录的压缩及解压功能

    在IT领域,实现在线对文件及目录的压缩与解压是一项常见的需求,尤其在Web应用中,用户可能需要上传文件、下载压缩包或者在线管理文件。这个功能涉及到多个技术点,包括文件操作、流处理、压缩算法以及权限管理。...

    移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能

    4. 文件上传:在Web开发中,文件上传通常需要通过HTML的标签来实现。然而在移动端,通常需要通过更复杂的组件来实现类似功能。Vant的Uploader组件就是为此设计的。 5. 图片压缩:图片压缩是一个优化图片文件大小的...

    Delphi写ASP组件实现快速多文件WEB上传

    标题 "Delphi写ASP组件实现快速多文件WEB上传" 提示我们关注的是一个使用Delphi编程语言编写的ASP(Active Server Pages)组件,这个组件的主要功能是优化和加速Web环境下的多文件上传过程。在ASP中,这样的组件通常...

    java实现的上传大文件以及压缩包,并且支持断点续传-上传大文件.zip

    多部分请求允许我们分块上传文件,而不是一次性加载整个文件到内存。以下是一个简单的Servlet示例: ```java @WebServlet("/upload") @MultipartConfig public class UploadServlet extends HttpServlet { ...

    ASP.NET利用RAR实现文件压缩解压缩

    ASP.NET 是一种基于 .NET Framework 的 Web 应用开发平台...总之,在ASP.NET中利用WinRAR进行文件压缩解压缩是一种可行的方法,但可能涉及到安全性和性能的问题。开发时应权衡这些因素,选择最适合项目需求的实现方式。

    上传文件demo(包含图片压缩多图上传)

    总之,"上传文件demo(包含图片压缩多图上传)"涵盖的技术是构建现代Web应用中的重要组成部分,不仅涉及到文件操作、图片处理,还涵盖了安全性、性能优化等多个方面。理解和掌握这些知识点对于开发高效、安全的文件...

    移动web图片上传

    在移动Web开发中,图片上传是一项常见的功能,它允许用户通过手机浏览器选择并发送本地图片到服务器。这个过程涉及到前端和后端...在提供的"上传文件封装"压缩包中,可能包含了实现这些功能的代码示例,可以参考学习。

    WEB前端大图片压缩并上传例子

    在现代的Web应用中,用户经常需要上传图片,特别是在移动设备上。然而,大尺寸的图片不仅上传速度慢...在"ImgUpload"这个实例中,开发者已经实现了一个实际的压缩和上传流程,这对于学习和应用此类技术是非常有价值的。

Global site tag (gtag.js) - Google Analytics