string oldname = this.FileUpload1.PostedFile.FileName; string newname = dd + h + mm + ss + oldname.Substring( " /> 国产婷婷综合在线视频中文,久久久乱码精品亚洲日韩,国产久久热99视频

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

asp.net 一個封裝比較完整的FTP類

先看這個簡單的
復制代碼 代碼如下:
FTP ftp = new FTP("192.168.1.117", "ahuinan", "123456");

string oldname = this.FileUpload1.PostedFile.FileName;
string newname = dd + h + mm + ss + oldname.Substring(oldname.LastIndexOf("."));


// ftp.Connect();
ftp.OpenUpload(oldname,newname);
while (ftp.DoUpload() > 0)
{
int perc = (int)(((ftp.BytesTotal) * 100) / ftp.FileSize);
Response.Write(perc.ToString() + "%<br/>");
Response.Flush();
}


功能

ü         建立FTP鏈接

ü         支持代理

ü         多種重載的同步上傳文件

ü         多種重載的異步上傳文件

ü         多種重載的同步下載文件

ü         多種重載的異步下載文件

ü         上傳文件的進度百分比

ü         下載文件的進度白分比

ü         有區分的列出目錄或者文件的信息(考慮到MS DOS顯示格式和UNIX格式)

ü         目錄或文件存在的判斷

ü         刪除文件

ü         重命名文件、目錄

ü         在FTP服務器上面拷貝、移動文件(許多人可能在苦苦尋找這個功能)

ü         建立、刪除目錄

ü         目錄切換操作(很新穎哦 J)

 

公共構造函數

名稱

說明

clsFTP()

初始化clsFtp類的新實例

clsFTP(Uri FtpUri, string strUserName, string strPassword)

由FTP地址、FTP登錄用戶信息、FTP登錄用戶密碼初始化clsFtp類的新實例

clsFTP(Uri FtpUri, string strUserName, string strPassword, WebProxy objProxy)

由FTP地址、FTP登錄用戶信息、FTP登錄用戶密碼、代理服務器對象初始化clsFtp類的新實例

 

 

 

 

公共屬性

名稱

說明

Uri

獲取或設置FTP服務器地址

DirectoryPath

獲取當前工作目錄

UserName

獲取或設置FTP登錄用戶

Password

獲取或設置FTP登錄密碼

Proxy

獲取或設置連接FTP服務器的代理服務

ErrorMsg

獲取操在返回的錯誤信息

 

 

公共方法

名稱

說明

DownloadFile(string RemoteFileName, string LocalPath)

從FTP服務器下載文件,使用與遠程文件同名的文件名來保存文件。

參數說明:

RemoteFileName: 遠程文件名

LocalPath: 本地路徑

DownloadFile(string RemoteFileName, string LocalPath, string LocalFileName)

從FTP服務器下載文件,指定本地路徑和本地文件名。

參數說明:

LocalPath: 本地路徑

LocalFilePath: 保存文件的本地路徑,后面帶有"/"

LocalFileName: 保存本地的文件名

DownloadFile(string RemoteFileName)

從FTP服務器下載文件,返回文件二進制數據。

參數說明:

RemoteFileName: 遠程文件名

DownloadFileAsync(string RemoteFileName, string LocalPath, string LocalFileName)

從FTP服務器異步下載文件,指定本地路徑和本地文件名。

參數說明:

RemoteFileName: 遠程文件名       

LocalPath: 保存文件的本地路徑,后面帶有"/"

LocalFileName: 保存本地的文件名

DownloadFileAsync(string RemoteFileName, string LocalFullPath)

從FTP服務器異步下載文件,指定本地完整路徑文件名。

參數說明:

RemoteFileName: 遠程文件名

LocalFullPath: 本地完整路徑文件名

UploadFile(string LocalFullPath)

上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件名

UploadFile(string LocalFullPath, bool OverWriteRemoteFile)

上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

UploadFile(string LocalFullPath, string RemoteFileName)

上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件

RemoteFileName: 要在FTP服務器上面保存文件名

UploadFile(string LocalFullPath, string RemoteFileName, bool OverWriteRemoteFile)

上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件名

RemoteFileName: 要在FTP服務器上面保存文件名

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

UploadFile(byte[] FileBytes, string RemoteFileName)

上傳文件到FTP服務器

參數說明:

FileBytes: 上傳的二進制數據

RemoteFileName: 要在FTP服務器上面保存文件名

UploadFile(byte[] FileBytes, string RemoteFileName, bool OverWriteRemoteFile)

上傳文件到FTP服務器

參數說明:

FileBytes: 文件二進制內容

RemoteFileName: 要在FTP服務器上面保存文件名

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

UploadFileAsync(string LocalFullPath)

異步上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件名

UploadFileAsync(string LocalFullPath, bool OverWriteRemoteFile)

異步上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

UploadFileAsync(string LocalFullPath, string RemoteFileName)

異步上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件

RemoteFileName: 要在FTP服務器上面保存文件名

UploadFileAsync(string LocalFullPath, string RemoteFileName, bool OverWriteRemoteFile)

異步上傳文件到FTP服務器

參數說明:

LocalFullPath: 本地帶有完整路徑的文件名

RemoteFileName: 要在FTP服務器上面保存文件名

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

UploadFileAsync(byte[] FileBytes, string RemoteFileName)

異步上傳文件到FTP服務器

參數說明:

FileBytes: 上傳的二進制數據

RemoteFileName: 要在FTP服務器上面保存文件名

UploadFileAsync(byte[] FileBytes, string RemoteFileName, bool OverWriteRemoteFile)

異步上傳文件到FTP服務器

參數說明:

FileBytes: 文件二進制內容

RemoteFileName: 要在FTP服務器上面保存文件名

OverWriteRemoteFile: 是否覆蓋遠程服務器上面同名的文件

ListFilesAndDirectories()

列出FTP服務器上面當前目錄的所有文件和目錄。

ListFiles()

列出FTP服務器上面當前目錄的所有文件。

ListDirectories()

列出FTP服務器上面當前目錄的所有的目錄。

DirectoryExist(string RemoteDirectoryName)

判斷當前目錄下指定的子目錄是否存在。

參數說明:

RemoteDirectoryName: 指定的目錄名

FileExist(string RemoteFileName)

判斷一個遠程文件是否存在服務器當前目錄下面。

參數說明:

RemoteFileName: 遠程文件名

DeleteFile(string RemoteFileName)

從FTP服務器上面刪除一個文件。

參數說明:

RemoteFileName: 遠程文件名

ReName(string RemoteFileName, string NewFileName)

更改一個文件的名稱或一個目錄的名稱。

參數說明:

RemoteFileName: 原始文件或目錄名稱

NewFileName: 新的文件或目錄的名稱

CopyFileToAnotherDirectory(string RemoteFile, string DirectoryName)

把當前目錄下面的一個文件拷貝到服務器上面另外的目錄中,注意,拷貝文件之后,當前工作目錄還是文件原來所在的目錄。

參數說明:

RemoteFile: 當前目錄下的文件名

DirectoryName: 新目錄名稱。

 說明:如果新目錄是當前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

 如果新目錄不是當前目錄的子目錄,則必須從根目錄一級一級的指定。如:./NewDirectory/SubDirectory1/SubDirectory2

MoveFileToAnotherDirectory(string RemoteFile, string DirectoryName)

把當前目錄下面的一個文件移動服務器上面另外的目錄中,注意,移動文件之后,當前工作目錄還是文件原來所在的目錄。

參數說明:

RemoteFile: 當前目錄下的文件名

DirectoryName: 新目錄名稱。

 說明:如果新目錄是當前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

 如果新目錄不是當前目錄的子目錄,則必須從根目錄一級一級的指定。如:./NewDirectory/SubDirectory1/SubDirectory2

MakeDirectory(string DirectoryName)

在FTP服務器上當前工作目錄建立一個子目錄。

參數說明:

DirectoryName: 子目錄名稱

RemoveDirectory(string DirectoryName)

從當前工作目錄中刪除一個子目錄。

參數說明:

DirectoryName: 子目錄名稱

IsValidPathChars(string DirectoryName)

判斷目錄名中字符是否合法。

參數說明:

DirectoryName: 目錄名稱

IsValidFileChars(string FileName)

判斷文件名中字符是否合法。

參數說明:

FileName: 文件名稱

GotoDirectory(string DirectoryName)

進入一個目錄。

參數說明:

DirectoryName:

 新目錄的名字。

 說明:如果新目錄是當前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

 如果新目錄不是當前目錄的子目錄,則必須從根目錄一級一級的指定。如:./NewDirectory/SubDirectory1/SubDirectory2

EnterOneSubDirectory(string DirectoryName)

從當前工作目錄進入一個子目錄。

參數說明:

DirectoryName: 子目錄名稱

ComeoutDirectory()

從當前工作目錄往上一級目錄。

 

 

 

公共事件

名稱

說明

DownloadProgressChanged

異步下載進度發生改變觸發的事件

DownloadDataCompleted

異步下載文件完成之后觸發的事件

UploadProgressChanged

異步上傳進度發生改變觸發的事件

UploadFileCompleted

異步上傳文件完成之后觸發的事件

 

 

 

其他說明

序號

說明

1

支持代理服務器

可以顯式地給Proxy屬性賦值;也可以在構造函數中傳遞Proxy對象。如果代理需要登錄用戶和密碼,則設置Proxy的Credentials屬性,例如:

Proxy.Credentials = new NETworkCredential(UserName, Password)

如果沒有代理,則無需給Proxy屬性賦值或者在構造函數中無需傳遞Proxy參數。

2

下載文件和上傳文件大小最大受Int32.MaxValue限制,所以最大處理只能是2,147,483,647字節。如果您想處理更大的文件,請自己修改代碼中對文件打開和讀寫操作部分的代碼使其適應您的要求。

3

只有在異步上傳文件或者異步下載文件的時候,才支持進度百分比觸發事件和下載(上傳)完成事件。

4

由于服務器未發送文件大小,因此被動 FTP 文件傳輸總是將進度百分比顯示為零。若要顯示進度,可以通過重寫 GetWebRequest 虛擬方法來將 FTP 連接更改為活動狀態。所以,我們在clsFTP類中另外使用內部類MyWebClient

 

5

在列出文件和目錄的時候,clsFTP類區分出了所獲得的響應數據哪些是文件,哪些是目錄。同時,考慮到了FTP服務器上面目錄樣式為MS DOS和UNIX兩種表現形式的不同。

6

支持在FTP服務器上面不同目錄之間移動文件和拷貝文件的功能。移動文件的方法比較巧妙,只是拷貝文件所使用的方法不太理想。

 

 

 

 

打包下載 discuz的比較好用

AspNet技術asp.net 一個封裝比較完整的FTP類,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 妻子的妹妹在线 | 丰满女友bd高清在线观看 | 国产在线播放不卡 | 国产精品AV色欲蜜臀在线 | 亚洲欧美另类无码专区 | 97夜夜澡人人爽人人模人人喊 | 花蝴蝶在线直播观看 | 校花的奶好大好浪 | 饥渴难耐的浪荡艳妇在线观看 | 依恋影院在线观看 | 试看2分钟AA片 | 久久视频这只精品99re6 | 琪琪色原网20岁以下热热色原网站 | 99久久久A片无码国产精 | 男女XX00上下抽搐动态图 | 狠狠色综合久久丁香婷婷 | 一级特黄aa大片欧美 | av影音先锋影院男人站 | 中文有码中文字幕免费视频 | 99国产在线视频有精品视频 | 亚洲伊人久久网 | 国产一浮力影院 | 国产呦精品一区二区三区下载 | vidosgratis tv少女 | 久青草国产97香蕉在线视频 | 国产毛片视频网站 | 国产午夜精品一区二区三区 | 久久免费看少妇高潮A片特爽 | 九九黄色大片 | 日韩视频在线观看 | 少妇无码吹潮久久精品AV网站 | 失禁h啪肉尿出来高h | 2019天天射干网站 | 大学生高潮无套内谢视频 | 日韩精品一区二区三区色欲AV | 国产69精品久久久久麻豆 | 黄片a级毛片 | 影视先锋男人无码在线 | 亚洲成人免费看 | 日本亚洲精品色婷婷在线影院 | 久久无码av三级 |