为了解决大文件上传的问题,我曾经也用过XMLHTTP分块,但是感觉还是不够好。
利用FTP的话就会方便服务器文件的管理。
首先安装一个CUTFTP软件,安装好以后,安装的文件夹中会有一个ftpte.exe文件,这就是FTP传输引擎,最关键的就是利用他了。
建立一个.NET的应用程序项目,引用ftpte.exe文件,之后,.NET会在BIN目录中生成一个Interop.CuteFTPPro.dll这个程序集,该程序集的名称空间为CuteFTPPro 。
之后,编写代码:
CuteFTPPro.TEConnectionClass ct = new CuteFTPPro.TEConnectionClass(); //创建FTP上传组建
ct.Host="192.168.1.88"; //设置服务器地址
//ct.Login=""; //设置登陆帐号,我的FTP服务器允许觅名登陆所以这句注译掉
//ct.Password=""; //设置登陆密码,……
ct.Connect(); //执行服务器连接
ct.Upload("D://asdfasdf.txt","asdf.txt",1).ToString(); //执行上传,第一个参数是本地文件路径和名称,第二个参数是上传到服务器后的文件名称,路径在当前FTP目录,第3个参数没搞懂是什么意思,但是好象随便写个什么数字都可以正常使用
ct.Close(""); //关闭连接
OK,就这样就可以轻松的制作一个FTP客户端上传文件了,另外 TEConnectionClass 类中还有其他方法,例如Download 等,使用正确的话可以完全实现CUTFTP的功能。
但是听说.net2.0中已经封装了FTP功能的类,在System.Net名称空间下。唉~郁闷。还是得更上步伐啊!