用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,可能编程实现远程文件定时或不定时同步等诸多功能,从而实现非手工方式的文件传输。 
本文转自today4king博客园博客,原文链接:http://www.cnblogs.com/jinzhao/archive/2007/07/10/813113.html,如需转载请自行联系原作者
相关文章
|
8月前
|
安全 算法 网络协议
【Linux】文件服务FTP(File Transfer Protocol)
【Linux】文件服务FTP(File Transfer Protocol)
121 0
|
8月前
|
开发框架 Java 数据处理
多sheet页导出 + FTP上传文件实战
多sheet页导出 + FTP上传文件实战
|
网络协议 安全 Linux
小白带你学习文件共享服务器FTP和SAMBA的学习(二十二)
小白带你学习文件共享服务器FTP和SAMBA的学习(二十二)
190 0
|
2月前
|
中间件 Docker Python
【Azure Function】FTP上传了Python Function文件后,无法在门户页面加载函数的问题
通过FTP上传Python Function至Azure云后,出现函数列表无法加载的问题。经排查,发现是由于`requirements.txt`中的依赖包未被正确安装。解决方法为:在本地安装依赖包到`.python_packages/lib/site-packages`目录,再将该目录内容上传至云上的`wwwroot`目录,并重启应用。最终成功加载函数列表。
|
3月前
|
网络安全 Windows
Jetson 学习笔记(十五):FTP协议传输文件
本文介绍了如何使用WinSCP软件通过FTP协议在Windows和Jetson设备之间传输文件,并分享了一些操作经验和技巧。
41 0
Jetson 学习笔记(十五):FTP协议传输文件
|
5月前
|
Java
Java SpringBoot FTP 上传下载文件
Java SpringBoot FTP 上传下载文件
190 0
|
8月前
|
存储 Linux 文件存储
网络文件共享ftp
网络文件共享ftp
|
8月前
|
存储 Unix Linux
LabVIEW与实时目标之间的FTP文件
LabVIEW与实时目标之间的FTP文件
245 0
Java——通过Java代码从ftp服务器下载文件
Java——通过Java代码从ftp服务器下载文件
|
8月前
|
Java
java上传、下载、预览、删除ftp服务器上的文件
java上传、下载、预览、删除ftp服务器上的文件