关于大文件上传的FTP解决方案

解决|上传

    用asp.net上传文件时,对大文件的处理总会不尽于人意,虽然从理论上讲,可以传输很大的文件(100M以上),但在实际使用中会出现各种问题.因此,基于B/S架构的大文件上传还是用FTP为好。
 用FTP手工上传文件没有什么可以说的,但我们往往需要通过程序来控制这一过程,即通过asp.net来实现这一目的.如果FTP软件具备可二次开发的接口就好了.经典的cuteftp pro就具有这样的功能。

 安装完cuteftp pro 7后,会生成一个文件叫ftpte(FTP传输引擎),ftpte提供了很多属性和方法,能够方便地通过编程来实现大文件的上传,包括文件过滤、目录和文件检测、文件删除、改名、传输启动和停止以及状态查看等等。

 下面是实例:

 连接FTP服务器:

Set MySite = CreateObject("CuteFTPPro.TEConnection")

MySite.Protocol = "FTP"

MySite.Host = "ftp.cuteftp.net"

MySite.Login = "username"

MySite.Password = "password"

MySite.Connect

 上传文件:

Set MySite = CreateObject("CuteFTPPro.TEConnection")

‘Specify user, pass, host, and connect as normal...

MySite.Connect ‘Recommended: call connect first

MySite.RemoteFolder = "Temp"

MySite.LocalFolder = "C:\123"

‘using relative path, all files in folder 123 are uploaded to the folder Temp off the current folder on the server.

MySite.Upload "*.*"

 下载文件:

Set MySite = CreateObject("CuteFTPPro.TEConnection")

‘Specify user, pass, host, and connect as normal...

MySite.Connect ‘Recommended: call connect first

‘next line changes to a predetermined folder so you can use a relative path in the download method

MySite.RemoteFolder = "/c:/Inetpub/ftproot/Temp/Temp/"

MsgBox (MySite.RemoteFolder) 'display current remote folder

MySite.Download "agent.ini", "c:\temp\agent1.ini"

'now verify downloaded ok

If CBool(MySite.LocalExists ("c:\temp\agent1.ini")) Then

MsgBox "File downloaded OK."

End If

 从实验的情况看,ftpte在C/S模式下能很好的支持各项功能,在B/S模式下会找不到组件,可能与没有注册有关。

 通过利用ftpte,可能编程实现远程文件定时或不定时同步等诸多功能,从而实现非手工方式的文件传输。

时间: 2024-11-05 03:10:21

关于大文件上传的FTP解决方案的相关文章

java 大文件上传

问题描述 最近需要做一个资源平台,基于web形式,需要上传大文件,格式很多种,主要是文件都比较大(500M以上的).类似电影,应用软件.我使用的是struts2+spring+hibernate技术,先前使用的是struts2的文件上传fileUpload,重新设置上传大小,可以实现大文件上传,但是速度较慢,担心网络不好的地方,会出错误,也曾想过给每个用户开一个ftp,让他们每个人先上传自己的资源,而后在需要上传资源的地方,书写自己文件的名称,我后台去查找,验证资源是否上传了,已上传就保存,未找

Java实现FTP批量大文件上传下载篇1_java

本文介绍了在Java中,如何使用Java现有的可用的库来编写FTP客户端代码,并开发成Applet控件,做成基于Web的批量.大文件的上传下载控件.文章在比较了一系列FTP客户库的基础上,就其中一个比较通用且功能较强的j-ftp类库,对一些比较常见的功能如进度条.断点续传.内外网的映射.在Applet中回调JavaScript函数等问题进行详细的阐述及代码实现,希望通过此文起到一个抛砖引玉的作用. 一.引子 笔者在实施一个项目过程中出现了一种基于Web的文件上传下载需求.在全省(或全国)各地的用

ASP.NET对大文件上传的解决方案_实用技巧

首先,我们需要下载这个名为 RanUpLoad 的组件. 下载完成之后,两个 dll 文件添加到项目的引用中区,xml 文件也要复制在项目中的 bin 文件夹下,也就是最后三个文件都要存在于 bin 文件夹中. 接着,上传控件还是用 ASP.NET 中自带的 FileUpload 控件,需要添加的就是在 FileUpload 控件旁边加入标签: <radU:RadProgressManager ID="Radprogressmanager1" Width="100%&q

java-jsp如何实现通过file控件将本地文件文件上传到ftp中?

问题描述 jsp如何实现通过file控件将本地文件文件上传到ftp中? 如果使用Apache的FTPClient方式,要怎么做?麻烦说一下具体流程,如果有个示例最好了.jsp要做什么修改?后台逻辑怎么实现?这两个怎么关联. PS:现在做的是一个"注册信息"的界面,现在实现的是将相关信息填写完成后(file控件只是获取了本地文件的路径),通过点击下方的"保存" (submit)后, 利用表单的action=""SaveServlet"&q

java web项目 大文件上传

问题描述 项目中需要上传大文件(视频),考虑到性能因素,决定选择使用ftp工具上传,服务器用的是vsftp(linux).在网上找了好多资料,决定选用uploadify+struts2(因为框架使用的是SSI)实现.ftp选用的是apache提供的客户端工具.目前遇到的问题是ftp客户端与服务器建立连接时间过长(大概需要20秒左右),前端需要长时间等待.也可以给提供解决问题的思路. 解决方案 本帖最后由 wuwei19871020 于 2015-01-07 12:11:42 编辑解决方案二:用过

asp.net下大文件上传知识整理_实用技巧

最近做在做ePartner项目,涉及到文件上传的问题. 以前也做过文件上传,但都是些小文件,不超过2M. 这次要求上传100M以上的东西. 没办法找来资料研究了一下.基于WEB的文件上传可以使用FTP和HTTP两种协议,用FTP的话虽然传输稳定,但安全性是个严重的问题,而且FTP服务器读用户库获取权限,这样对于用户使用来说还是不太方便. 剩下只有HTTP.在HTTP中有3种方式,PUT.WEBDAV.RFC1867,前2种方法不适合大文件上传,目前我们使用的web上传都是基于RFC1867标准的

winfromFTP大文件上传问题。急!

问题描述 winfromFTP大文件上传问题.急! winfrom使用FTP进行大文件上传时,没有加入线程的时候,上传上去,服务器直接把数据写入到文件,是可以断点续传的,但是用户界面假死:加入线程或者backgroundwork之后,用户界面不会假死,但是上传上去的文件没有及时的写入,关闭程序之后,服务器上面的文件什么都没有写入,还把之前的删掉了.请问有没有方法可以解决这个问题?急!! 解决方案 不知道你是怎么加入线程的.以及你是怎么上传的.该同步的有没有同步. 解决方案二: 我现在用的是bac

JAVA WEB怎么实现大文件上传(上G的文件)

问题描述 JAVAweb怎么实现上G的文件上传.好像用Struct2对大文件支持有限.比如百度云硬盘,还要邮箱的大附件上传方式.都是用什么技术实现的,activex技术,ftp方式,还是其他什么方式 解决方案 解决方案二:解决这种大文件上传不太可能用web上传的方式,只有自己开发插件或是当门客户端上传,或者用现有的ftp等.1)开发一个web插件.用于上传文件.2)开发一个FTP工具,不用web上传.3)用现有的FTP工具.下面是几款不错的插件,你可以试试:1)Jquery的uploadify插

jsp程序在服务器上运行,如何将本地文件上传到ftp上

问题描述 jsp程序在服务器上运行,如何将本地文件上传到ftp上jsp页面传过去String fileString 应该不行的,它会执行服务器的那个地址,可能会报错我感觉应该穿过去一个File file 文件的吧,不知道如何实现, 一般的网页都是如何实现的呢? 有些迷茫,忘爱好者给指点下! 解决方案 form表单 enctype="multipart/form-data"<input name="userfile" type="file"&