關(guān)于c#連接ftp進(jìn)行上傳下載實(shí)現(xiàn)原理及代碼
更新時(shí)間:2013年01月24日 17:12:21 作者:
ftp上傳下載想必大家已經(jīng)很熟悉了,關(guān)于c#連接ftp進(jìn)行上傳下載,一些新手朋友應(yīng)該會(huì)很陌生吧,本文將帶你解決困惑,感興趣的朋友可以了解下哦,就當(dāng)鞏固知識(shí)了
復(fù)制代碼 代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;
namespace ftponload
{
class Program
{
static void Main(string[] args)
{
//上傳文件的方法
onload("D://outPut.txt");
//下載文件的方法
fload();
}
public static void onload(string file)
{
//構(gòu)造一個(gè)web服務(wù)器的請(qǐng)求對(duì)象
FtpWebRequest ftp;
//實(shí)例化一個(gè)文件對(duì)象
FileInfo f = new FileInfo(file);
ftp = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://192.168.0.150/" + f.Name));
//創(chuàng)建用戶名和密碼
ftp.Credentials = new NetworkCredential("123", "123");
ftp.KeepAlive = false;
ftp.Method = WebRequestMethods.Ftp.UploadFile;
ftp.UseBinary = true;
ftp.ContentLength = f.Length;
int buffLength = 20480;
byte[] buff = new byte[buffLength];
int contentLen;
try
{
//獲得請(qǐng)求對(duì)象的輸入流
FileStream fs = f.OpenRead();
Stream sw = ftp.GetRequestStream();
contentLen = fs.Read(buff, 0, buffLength);
while (contentLen != 0)
{
sw.Write(buff, 0, contentLen);
contentLen = fs.Read(buff, 0, buffLength);
}
sw.Close();
fs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
public static void fload()
{
FtpWebRequest ftp;
ftp = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://192.168.0.6/連接到你指定的文件"));
//指定用戶名和密碼
ftp.Credentials = new NetworkCredential("123", "123456");
WebResponse wr = ftp.GetResponse();
StreamReader sr = new StreamReader(wr.GetResponseStream(),System.Text.Encoding.Default);
string s = sr.ReadLine();
while(s.Equals(""))
{
s = sr.ReadLine();
}
}
}
}
相關(guān)文章
Asp.Mvc?2.0實(shí)現(xiàn)用戶注冊(cè)實(shí)例講解(1)
這篇文章主要介紹了Asp.Mvc?2.0如何實(shí)現(xiàn)用戶注冊(cè),實(shí)例講解很細(xì)致,注冊(cè)功能是每個(gè)網(wǎng)站必不可少的組成部分,感興趣的的朋友可以參考下2015-08-08
asp.net 使用Silverlight操作ASPNETDB數(shù)據(jù)庫(kù)
asp.net下使用Silverlight操作ASPNETDB數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼2010-01-01
DataGridView多維表頭的實(shí)現(xiàn)方法
不過(guò)我自己還是擴(kuò)展了DataGridView,使之能制作出多維表頭。2013-04-04
aspx中頁(yè)面按鈕寫(xiě)返回上一頁(yè)代碼
近段時(shí)間,Insus.NET不斷補(bǔ)學(xué)習(xí)Javascript知識(shí)。但在練習(xí)寫(xiě)返回上一頁(yè)的功能時(shí),卻遇上一點(diǎn)小問(wèn)題2012-11-11
ASP.NET 2.0 中收集的小功能點(diǎn)(轉(zhuǎn))
ASP.NET 2.0 中收集的小功能點(diǎn)(轉(zhuǎn))...2006-12-12
.Net 項(xiàng)目代碼風(fēng)格要求小結(jié)
代碼風(fēng)格沒(méi)有正確與否,重要的是整齊劃一,這是我擬的一份《.Net 項(xiàng)目代碼風(fēng)格要求》,供大家參考2015-12-12

