• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
    當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

    asp.net 一個(gè)封裝比較完整的FTP類

    來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:44:20
    文檔

    asp.net 一個(gè)封裝比較完整的FTP類

    asp.net 一個(gè)封裝比較完整的FTP類:先看這個(gè)簡(jiǎn)單的 代碼如下:FTP ftp = new FTP(192.168.1.117, ahuinan, 123456); string oldname = this.FileUpload1.PostedFile.FileName; string newname = dd + h + mm + ss + oldname.Subst
    推薦度:
    導(dǎo)讀asp.net 一個(gè)封裝比較完整的FTP類:先看這個(gè)簡(jiǎn)單的 代碼如下:FTP ftp = new FTP(192.168.1.117, ahuinan, 123456); string oldname = this.FileUpload1.PostedFile.FileName; string newname = dd + h + mm + ss + oldname.Subst

    先看這個(gè)簡(jiǎn)單的
    代碼如下:
    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鏈接

    ü         支持代理

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

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

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

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

    ü         上傳文件的進(jìn)度百分比

    ü         下載文件的進(jìn)度白分比

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

    ü         目錄或文件存在的判斷

    ü         刪除文件

    ü         重命名文件、目錄

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

    ü         建立、刪除目錄

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

     

    公共構(gòu)造函數(shù)

    名稱

    說(shuō)明

    clsFTP()

    初始化clsFtp類的新實(shí)例

    clsFTP(Uri FtpUri, string strUserName, string strPassword)

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

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

    由FTP地址、FTP登錄用戶信息、FTP登錄用戶密碼、代理服務(wù)器對(duì)象初始化clsFtp類的新實(shí)例

     

     

     

     

    公共屬性

    名稱

    說(shuō)明

    Uri

    獲取或設(shè)置FTP服務(wù)器地址

    DirectoryPath

    獲取當(dāng)前工作目錄

    UserName

    獲取或設(shè)置FTP登錄用戶

    Password

    獲取或設(shè)置FTP登錄密碼

    Proxy

    獲取或設(shè)置連接FTP服務(wù)器的代理服務(wù)

    ErrorMsg

    獲取操在返回的錯(cuò)誤信息

     

     

    公共方法

    名稱

    說(shuō)明

    DownloadFile(string RemoteFileName, string LocalPath)

    從FTP服務(wù)器下載文件,使用與遠(yuǎn)程文件同名的文件名來(lái)保存文件。

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名

    LocalPath: 本地路徑

    DownloadFile(string RemoteFileName, string LocalPath, string LocalFileName)

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

    參數(shù)說(shuō)明:

    LocalPath: 本地路徑

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

    LocalFileName: 保存本地的文件名

    DownloadFile(string RemoteFileName)

    從FTP服務(wù)器下載文件,返回文件二進(jìn)制數(shù)據(jù)。

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名

    DownloadFileAsync(string RemoteFileName, string LocalPath, string LocalFileName)

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

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名       

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

    LocalFileName: 保存本地的文件名

    DownloadFileAsync(string RemoteFileName, string LocalFullPath)

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

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名

    LocalFullPath: 本地完整路徑文件名

    UploadFile(string LocalFullPath)

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    UploadFile(string LocalFullPath, bool OverWriteRemoteFile)

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    UploadFile(string LocalFullPath, string RemoteFileName)

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    UploadFile(string LocalFullPath, string RemoteFileName, bool OverWriteRemoteFile)

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    UploadFile(byte[] FileBytes, string RemoteFileName)

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

    FileBytes: 上傳的二進(jìn)制數(shù)據(jù)

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

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

    上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

    FileBytes: 文件二進(jìn)制內(nèi)容

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    UploadFileAsync(string LocalFullPath)

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    UploadFileAsync(string LocalFullPath, bool OverWriteRemoteFile)

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    UploadFileAsync(string LocalFullPath, string RemoteFileName)

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    UploadFileAsync(string LocalFullPath, string RemoteFileName, bool OverWriteRemoteFile)

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

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

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    UploadFileAsync(byte[] FileBytes, string RemoteFileName)

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

    FileBytes: 上傳的二進(jìn)制數(shù)據(jù)

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

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

    異步上傳文件到FTP服務(wù)器。

    參數(shù)說(shuō)明:

    FileBytes: 文件二進(jìn)制內(nèi)容

    RemoteFileName: 要在FTP服務(wù)器上面保存文件名

    OverWriteRemoteFile: 是否覆蓋遠(yuǎn)程服務(wù)器上面同名的文件

    ListFilesAndDirectories()

    列出FTP服務(wù)器上面當(dāng)前目錄的所有文件和目錄。

    ListFiles()

    列出FTP服務(wù)器上面當(dāng)前目錄的所有文件。

    ListDirectories()

    列出FTP服務(wù)器上面當(dāng)前目錄的所有的目錄。

    DirectoryExist(string RemoteDirectoryName)

    判斷當(dāng)前目錄下指定的子目錄是否存在。

    參數(shù)說(shuō)明:

    RemoteDirectoryName: 指定的目錄名

    FileExist(string RemoteFileName)

    判斷一個(gè)遠(yuǎn)程文件是否存在服務(wù)器當(dāng)前目錄下面。

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名

    DeleteFile(string RemoteFileName)

    從FTP服務(wù)器上面刪除一個(gè)文件。

    參數(shù)說(shuō)明:

    RemoteFileName: 遠(yuǎn)程文件名

    ReName(string RemoteFileName, string NewFileName)

    更改一個(gè)文件的名稱或一個(gè)目錄的名稱。

    參數(shù)說(shuō)明:

    RemoteFileName: 原始文件或目錄名稱

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

    CopyFileToAnotherDirectory(string RemoteFile, string DirectoryName)

    把當(dāng)前目錄下面的一個(gè)文件拷貝到服務(wù)器上面另外的目錄中,注意,拷貝文件之后,當(dāng)前工作目錄還是文件原來(lái)所在的目錄。

    參數(shù)說(shuō)明:

    RemoteFile: 當(dāng)前目錄下的文件名

    DirectoryName: 新目錄名稱。

     說(shuō)明:如果新目錄是當(dāng)前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

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

    MoveFileToAnotherDirectory(string RemoteFile, string DirectoryName)

    把當(dāng)前目錄下面的一個(gè)文件移動(dòng)到服務(wù)器上面另外的目錄中,注意,移動(dòng)文件之后,當(dāng)前工作目錄還是文件原來(lái)所在的目錄。

    參數(shù)說(shuō)明:

    RemoteFile: 當(dāng)前目錄下的文件名

    DirectoryName: 新目錄名稱。

     說(shuō)明:如果新目錄是當(dāng)前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

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

    MakeDirectory(string DirectoryName)

    在FTP服務(wù)器上當(dāng)前工作目錄建立一個(gè)子目錄。

    參數(shù)說(shuō)明:

    DirectoryName: 子目錄名稱

    RemoveDirectory(string DirectoryName)

    從當(dāng)前工作目錄中刪除一個(gè)子目錄。

    參數(shù)說(shuō)明:

    DirectoryName: 子目錄名稱

    IsValidPathChars(string DirectoryName)

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

    參數(shù)說(shuō)明:

    DirectoryName: 目錄名稱

    IsValidFileChars(string FileName)

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

    參數(shù)說(shuō)明:

    FileName: 文件名稱

    GotoDirectory(string DirectoryName)

    進(jìn)入一個(gè)目錄。

    參數(shù)說(shuō)明:

    DirectoryName:

     新目錄的名字。

     說(shuō)明:如果新目錄是當(dāng)前目錄的子目錄,則直接指定子目錄。如: SubDirectory1/SubDirectory2 ;

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

    EnterOneSubDirectory(string DirectoryName)

    從當(dāng)前工作目錄進(jìn)入一個(gè)子目錄。

    參數(shù)說(shuō)明:

    DirectoryName: 子目錄名稱

    ComeoutDirectory()

    從當(dāng)前工作目錄往上一級(jí)目錄。

     

     

     

    公共事件

    名稱

    說(shuō)明

    DownloadProgressChanged

    異步下載進(jìn)度發(fā)生改變觸發(fā)的事件

    DownloadDataCompleted

    異步下載文件完成之后觸發(fā)的事件

    UploadProgressChanged

    異步上傳進(jìn)度發(fā)生改變觸發(fā)的事件

    UploadFileCompleted

    異步上傳文件完成之后觸發(fā)的事件

     

     

     

    其他說(shuō)明

    序號(hào)

    說(shuō)明

    1

    支持代理服務(wù)器。

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

    Proxy.Credentials = new NetworkCredential(UserName, Password)

    如果沒(méi)有代理,則無(wú)需給Proxy屬性賦值或者在構(gòu)造函數(shù)中無(wú)需傳遞Proxy參數(shù)。

    2

    下載文件和上傳文件大小最大受Int32.MaxValue限制,所以最大處理只能是2,147,483,647字節(jié)。如果您想處理更大的文件,請(qǐng)自己修改代碼中對(duì)文件打開(kāi)和讀寫(xiě)操作部分的代碼使其適應(yīng)您的要求。

    3

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

    4

    由于服務(wù)器未發(fā)送文件大小,因此被動(dòng) FTP 文件傳輸總是將進(jìn)度百分比顯示為零。若要顯示進(jìn)度,可以通過(guò)重寫(xiě) GetWebRequest 虛擬方法來(lái)將 FTP 連接更改為活動(dòng)狀態(tài)。所以,我們?cè)赾lsFTP類中另外使用內(nèi)部類MyWebClient

     

    5

    在列出文件和目錄的時(shí)候,clsFTP類區(qū)分出了所獲得的響應(yīng)數(shù)據(jù)哪些是文件,哪些是目錄。同時(shí),考慮到了FTP服務(wù)器上面目錄樣式為MS DOS和UNIX兩種表現(xiàn)形式的不同。

    6

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

     

     

     

     

    打包下載 discuz的比較好用

    聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    asp.net 一個(gè)封裝比較完整的FTP類

    asp.net 一個(gè)封裝比較完整的FTP類:先看這個(gè)簡(jiǎn)單的 代碼如下:FTP ftp = new FTP(192.168.1.117, ahuinan, 123456); string oldname = this.FileUpload1.PostedFile.FileName; string newname = dd + h + mm + ss + oldname.Subst
    推薦度:
    標(biāo)簽: 完整的 net ASP.NET
    • 熱門(mén)焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門(mén)推薦

    專題
    Top
    主站蜘蛛池模板: sihu国产精品永久免费| 久久精品一区二区国产| 国产福利在线观看精品| 免费精品国自产拍在线播放| 精品久久人妻av中文字幕| 精品国产人成亚洲区| 无码国产乱人伦偷精品视频| 999在线视频精品免费播放观看| 亚洲精品无码久久久| 国产亚洲精品高清在线| 国产精品免费观看| 国产精品久久久久久吹潮| 中文字幕精品一区二区三区视频| 国产一区二区三区精品视频 | 久久精品无码专区免费青青| 精品一区二区三区在线观看| 亚洲精品在线观看视频| 国产精品久久久天天影视| 精品无码国产一区二区三区51安| 香蕉国产精品麻豆亚洲欧美日韩精品自拍欧美v国 | 亚洲国产精品人人做人人爽| 久久九九久精品国产| 国产福利电影一区二区三区久久久久成人精品综合 | 国产精品视频全国免费观看| 久久777国产线看观看精品| 国产成人精品2021| 91精品国产色综合久久| 国产精品18久久久久久vr| 2021久久国自产拍精品| 国产精品区免费视频| 国产l精品国产亚洲区在线观看| 久久99精品久久久久婷婷| 日韩精品人妻系列无码专区免费| 日韩精品一区二区亚洲AV观看| 人妻少妇精品视频一区二区三区| 欧美亚洲色综久久精品国产 | 精品亚洲国产成AV人片传媒| 乱色精品无码一区二区国产盗 | 久久99国产综合精品| 久久久久人妻一区精品色| 久久久久女人精品毛片|