大家好,有個(gè)問(wèn)題請(qǐng)教一下大家。我用vsftpd搭建了一個(gè)服務(wù)器,每一分鐘向其中的一個(gè)log文本不停傳送一些測(cè)試相關(guān)信息。現(xiàn)在我想做一個(gè)winform測(cè)試程序。遠(yuǎn)程實(shí)時(shí)獲取ftp上傳的數(shù)據(jù)流。理想界面是點(diǎn)擊按鈕,可以一行一行遠(yuǎn)程讀取log文本數(shù)據(jù),并顯示在文本框內(nèi)。
如下圖所示
我只能想到下面的做法,但是這樣并不能實(shí)時(shí)更新數(shù)據(jù)流。希望能得到大家的幫助。
private void button1_Click(object sender, EventArgs e) { WebClient wc = new WebClient(); String url = "ftp://192.168.101.1/var/gps/" + "gps_log"; wc.Credentials = new NetworkCredential("root", "k21cm"); wc.Proxy = null; try { byte[] newFileData = wc.DownloadData(url); string fileString = System.Text.Encoding.UTF8.GetString(newFileData); richTextBox1.Text = fileString; //Stream stream; //StreamReader streamreader; //stream = wc.OpenRead("ftp://192.168.101.1/var/gps/gps_log"); //streamreader = new StreamReader(stream, System.Text.Encoding.Default); //while (streamreader.ReadLine() != null) //{ //string str = streamreader.ReadLine(); //Console.WriteLine(str); //} } catch (WebException ex) { Console.WriteLine(ex); } }
感謝閱覽。