c# ftps上传

zhanglei623 2010-07-21 11:52:11
求C# ftps上传文件demo。
网上找了半天,没有找到合适的,突然那想起还有csdn的兄弟们,特来求助。
...全文
641 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanglei623 2010-09-08
  • 打赏
  • 举报
回复
终于用starksoft解决了,唉。可是这份怎么结呢
zhanglei623 2010-09-07
  • 打赏
  • 举报
回复
很郁闷,谁能让我结这个帖子呢
porschev 2010-08-23
  • 打赏
  • 举报
回复
帮顶。。。。没做过ftps上传
zhanglei623 2010-08-23
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 computerfox 的回复:]
参考:
封装的FTP操作类
[/Quote]

是ftps的,不是ftp的,两个似乎不大一样
byshome 2010-08-10
  • 打赏
  • 举报
回复
http://blog.csdn.net/byshome/archive/2010/08/10/5801991.aspx
我自己写的一个FTP类
熙风 2010-07-25
  • 打赏
  • 举报
回复
学习··
捷哥1999 2010-07-24
  • 打赏
  • 举报
回复
hyblusea 2010-07-24
  • 打赏
  • 举报
回复

public static bool UploadFtpFile(string BaseUriStr, string AimUriStr, string UserName, string UserPwd, string SrcFilePath)
{
Uri BaseUri = new Uri(BaseUriStr);
Uri AimUri = new Uri(BaseUri, AimUriStr);
FtpWebRequest FtpRequest = (FtpWebRequest)WebRequest.Create(AimUri);
//FtpRequest.KeepAlive = true;
FtpRequest.KeepAlive = false;
FtpRequest.ReadWriteTimeout = 10000;
FtpRequest.UsePassive = false;
FtpRequest.Proxy = null;
FtpRequest.CachePolicy = new System.Net.Cache.RequestCachePolicy();
NetworkCredential FtpCred = new NetworkCredential(UserName, UserPwd);
CredentialCache FtpCache = new CredentialCache();
FtpCache.Add(AimUri, AuthType.Basic.ToString(), FtpCred);
FtpRequest.Credentials = FtpCache;
FtpRequest.Method = WebRequestMethods.Ftp.UploadFile;

try
{
Stream stm = FtpRequest.GetRequestStream();
byte[] RequestByteArray = File.ReadAllBytes(SrcFilePath);
stm.Write(RequestByteArray, 0, RequestByteArray.Length);
stm.Close();

FtpWebResponse FtpResponse = (FtpWebResponse)FtpRequest.GetResponse();
if (FtpResponse.StatusCode == FtpStatusCode.ClosingData)
{
FtpResponse.Close();
FileInfo FI = new FileInfo(SrcFilePath);

if (GetFtpFileSize(BaseUriStr, AimUriStr, UserName, UserPwd) == FI.Length)
{
return true;
}
else
{
return false;
}
}
else
{
FtpResponse.Close();
return false;
}
}
catch (WebException e)
{
FtpWebResponse FtpResponse = (FtpWebResponse)e.Response;
FtpResponse.Close();

return false;
}
}

zhanglei623 2010-07-24
  • 打赏
  • 举报
回复
哎。没人理啊
cp298674954 2010-07-21
  • 打赏
  • 举报
回复
http://www.codeproject.com/cs/internet/SimpleFTPDemo.asp
http://www.codeproject.com/vb/net/FtpClient.asp
http://www.embed.com.cn/protocol/rfc.asp
这里有
其实说白了也就是一个Socket通信,只不过遵循这个RFC FTP协议而己.
很简单的.原来做C作业弄了个简单的FTP,很容易的.
cp298674954 2010-07-21
  • 打赏
  • 举报
回复
得用 Scott 吧
tyy283 2010-07-21
  • 打赏
  • 举报
回复
sf,帮顶
xy325432 2010-07-21
  • 打赏
  • 举报
回复
使用Socket实现吧
zhanglei623 2010-07-21
  • 打赏
  • 举报
回复
老大,me需要ftps 的,也就是ssl的破玩意,唉
happyboyxq 2010-07-21
  • 打赏
  • 举报
回复

FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/test.htm");
request.Method = WebRequestMethods.Ftp.UploadFile;

// This example assumes the FTP site uses anonymous logon.

request.Credentials = new NetworkCredential("asd", "123");

// Copy the contents of the file to the request stream.
StreamReader sourceStream = new StreamReader("testfile.txt");
byte[] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
sourceStream.Close();
request.ContentLength = fileContents.Length;

Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();

FtpWebResponse response = (FtpWebResponse)request.GetResponse();

Console.WriteLine("Upload File Complete, status {0}", response.StatusDescription);

response.Close();

.net有自己封装好的库类来上传下载。直接用就可以了啊。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧