强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan
前言
这是前三周的事情了,拿到现在来总结真是惭愧了,某个周四把任务都做完了,看了会代码有点乏了,就开始鼓捣,想起来自己对数据库的语句操作一直不是很熟悉,所以就找了个教程敲了一遍操作语句,估计是组长看我没事了,周五给我安排了个任务,将文件从CDN服务器上down下来,上传到Preview服务器的对应目录下。下面记录一下我在本地测试的内容。
FTP服务简介
FTP全称File Transfer Protocol,文件传输协议,是TCP/IP协议组中的协议之一,FTP协议分为两部分:FTP服务器和FTP客户端,我们都已经知道了文件传输用到的端口为20和21。FTP服务器的默认端口是21,FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。有个简单的实例就是大米用的管理资料的服务器,这个服务器担当的是服务器端的角色,而我们用的电脑担当则是客户端的角色。
功能实现
1.准备本地测试的工具:FTPserver
2.把本地模拟成服务端,端口为21,用户名为anonymous,密码为****,左下角的即为当前的IP地址,这些信息用于对用户授权,我们操作FTP服务器都是需要授权的,格式为:ftp://用户名:密码@FTP服务器IP或域名:FTP命令端口/路径/文件名。
3.准备FTPHelper,封装上传与下载的代码
public class FTPHelper
{
#region Variables
private FtpWebRequest reqFTP = null;
private string userName { get; set; }
private string password { get; set; }
//private string ftpUri { get; set; }
private NetworkCredential certficate;
public FtpStatusCode statusCode { get; set; }
public string statusDescription { get; set; }
#endregion
#region Constructor
public FTPHelper(string ftpUserName, string ftpPassword)
{
this.userName = ftpUserName;
this.password = ftpPassword;
certficate = new NetworkCredential(ftpUserName, ftpPassword);
}
#endregion
#region UploadOverMove
public bool UploadOverMo