Midapex網路開發庫v2.2(更新主題:使用C#實現的FTP用戶端)

來源:互聯網
上載者:User

工程:Midapex網路開發庫
授權方式:GPL V3
版本:v2.2
運行平台:.NET 2.0
IDE:Visual Sutido 2008
(C)2008 Midapex All Rights Reserved.

工程:http://files.cnblogs.com/dyj057/MidapexNetLibv2.2.rar

v2.2功能特點:
    1.添加FtpClient的功能實現,通過該類可以實現大多數的FTP檔案操作,配合FtpServer實現完整的檔案傳輸功能。
    2.整合了Midapex.dll和Midapx.Net.dll,只需要引入一次組件,更方便使用。

v2.1功能特點:
    1.添加FtpServer的功能實現。
    2.二次開發功能,可以很容易的實現內嵌的FTP Server,實現檔案的傳輸功能。

v2.0功能特點:
    1.使用非同步Socket,它的內部使用IOCP實現,效能優越。
    2.實現通訊中的心跳功能,能即時發現處理‘死串連’現象。
    3.通過自訂報文或者文字欄位實現通訊資料的自動分段。
    4.支援資料加密傳輸。
    5.支援Mono,可以跨平台使用該庫。
    6.通過模板編程,實現各個功能模組靈活組裝使用。
    7.內附完整開發指南。

具體內容請參看本部落格其它內容。
PS:這兩天就寫Ftp client代碼了,累就一個字。。。。希望大家滿意。

Ftp Client範例程式碼:

class Program
    {
        static void Main(string[] args)
        {
            Trace.Listeners.Add(new ConsoleTraceListener());
            TimeCounter counter = new TimeCounter();
            counter.Start();

            try
            {
                //設定伺服器的地址,連接埠,登陸帳號
                using (FtpClient client = new FtpClient("127.0.0.1", 21, "ftp", "ftp"))
                {
                        //先串連伺服器
                        client.Connect();
                        //然後發送登陸資訊
                        client.Login();
                        client.GetCurrentDir();
                        client.ChangeDir("/");

                        //列出根目錄下的檔案或目錄
                        List<FtpPathItem> items = client.List();
                        foreach (FtpPathItem item in items)
                        {
                            if (item.IsFile)
                                Console.WriteLine("<FILE> " + item.Name);
                            else
                                Console.WriteLine("<DIR> " + item.Name);
                        }

                        //產生一個新的隨機名稱目錄 
                        string newDir = ShortGuid.Create().ToShortString();
                        client.CreateDir(newDir);
                        client.ChangeDir(newDir);

                        Console.WriteLine("CURRENT DIR:" + client.CurrentDir);

                        string remoteFile = "nba_upload.jpg";
                        string localFile = "nba.jpg";

                        //上傳檔案
                        Console.WriteLine("UPLOAD  FILE:" + localFile);
                        client.Upload(remoteFile, localFile);

                        //同步下載檔案
                        localFile = "nba_down_sync.jpg";
                        Console.WriteLine("SYNC DOWNLOAD  FILE:" + localFile);
                        client.Download(remoteFile, localFile);

                        //退到上一級目錄
                        client.ChangeDir("..");

                        //刪除剛才建立的檔案
                        client.DeleteFile(newDir + "/" + remoteFile);
                        //產生一個新的隨機目錄名稱,然後重新命名剛建立的目錄
                        string newDir2 = ShortGuid.Create().ToShortString();
                        client.RenamePath(newDir, newDir2);

                        //刪除剛才建立的目錄
                        client.DeleteDir(newDir2);

                        //斷開與伺服器的串連
                        client.Disconnect();
                        counter.Stop();
                        Console.WriteLine("RUN TIME:" + counter.Milliseconds + "ms");
                        Console.WriteLine("Press enter key to exit.");
                        Console.ReadLine();
                    }
            }
            catch (System.Exception e)
            {
                NetDebuger.PrintErrorMessage(e.ToString());
                Console.ReadLine();
            }
        }
    }

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.