我有一个要求,例如需要创建一个 C# 应用程序,该应用程序将根据 app.config
文件中输入的设置将 excel 文件上传到FTP/SFTP"服务器(使用ftpftpssftp").
I have a requirement like need to create a C# app which will upload an excel file to "FTP/SFTP" server based on settings entered on the app.config
file (using "ftpftpssftp").
我对这些协议很陌生,有很多疑问.
I am fresh to these protocols, having so many doubts.
代码如下:
string PureFileName = new FileInfo(fileName).Name;
string uploadUrl = String.Format("ftp://{0}/{1}", ftpurl, PureFileName);
FtpWebRequest req = (FtpWebRequest)FtpWebRequest.Create(uploadUrl);
req.Proxy = null;
req.Method = WebRequestMethods.Ftp.UploadFile;
req.Credentials = new NetworkCredential(user, pass);
req.UseBinary = true;
req.UsePassive = true;
byte[] data = File.ReadAllBytes(fileName);
req.ContentLength = data.Length;
Stream stream = req.GetRequestStream();
stream.Write(data, 0, data.Length);
stream.Close();
FtpWebResponse res = (FtpWebResponse)req.GetResponse();
是否像将 url
从 FTP 更改为 FTPS?
Is it like changing url
from FTP to FTPS?
string uploadUrl = String.Format("ftps://{0}/{1}", ftpurl, PureFileName);
如果您的代码能够处理 FTPS,那么它通常也能够处理 FTP,但是有很多代码只能处理 FTP 而不能处理 FTPS.由于 SFTP 是一种完全不同的协议代码,处理 FTP/FTPS 通常无法进行 SFTP.而 SFTP 处理代码不会做 FTP/FTPS.也有例外,即 FileZilla 可以在单个应用程序中处理所有这些协议.
If your code is able to handle FTPS it is usually able to handle FTP too, but there is lots of code which can only handle FTP and not FTPS. Since SFTP is a completely different protocol code handling FTP/FTPS will usually not be able to do SFTP. And SFTP handling code will not do FTP/FTPS. There are exceptions, i.e. FileZilla can handle all these protocols in a single application.
关于将 FTPS 与 FtpWebRequests 一起使用,请参阅 msdn.无法将 SFTP 与 FtpWebRequests 一起使用,但有其他库.
As for using FTPS with FtpWebRequests see msdn. Using SFTP with FtpWebRequests is not possible but there are other libraries.
这篇关于FTP/FTPS/SFTP之间的区别 - 可配置连接到它们中的任何一个的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!