Ftp 在 C# 中使用 TcpClient
Ftp using TcpClient in C#
TcpClient tcp= new TcpClient();
tcp.Connect("192.168.10.1",21);
tcp.GetStream();
if(tcp.Connected.ToString()=="True")
{
NetworkStream ns=tcp.GetStream();
using(NetworkStream stream-tcp.GetStream())
{
byte[] username=System.Text.Encoding.ASCII.GetBytes(user+"\r\n")
stream.Wrtie(username,0,user.Length);
byte[] password=System.Text.Encoding.ASCII.GetBytes(pass+"\r\n")
stream.Wrtie(password,0,pass.Length);
MessageBox.Show(""+ns.Read(data,0,data.Length)+"");
}
}
我正在使用上面的代码 ftp 一个使用 tcpclient 的路由器,它 returns 一个错误提示“530 请使用 USER 和 PASS 登录”。
如果您要使用 TcpClient class(就像您正在做的那样),那么您将必须实施 FTP 规范(https://www.ietf.org/rfc/rfc959.txt).
不过,我认为最好找一个 FTP 客户端库来代替使用。
TcpClient tcp= new TcpClient();
tcp.Connect("192.168.10.1",21);
tcp.GetStream();
if(tcp.Connected.ToString()=="True")
{
NetworkStream ns=tcp.GetStream();
using(NetworkStream stream-tcp.GetStream())
{
byte[] username=System.Text.Encoding.ASCII.GetBytes(user+"\r\n")
stream.Wrtie(username,0,user.Length);
byte[] password=System.Text.Encoding.ASCII.GetBytes(pass+"\r\n")
stream.Wrtie(password,0,pass.Length);
MessageBox.Show(""+ns.Read(data,0,data.Length)+"");
}
}
我正在使用上面的代码 ftp 一个使用 tcpclient 的路由器,它 returns 一个错误提示“530 请使用 USER 和 PASS 登录”。
如果您要使用 TcpClient class(就像您正在做的那样),那么您将必须实施 FTP 规范(https://www.ietf.org/rfc/rfc959.txt).
不过,我认为最好找一个 FTP 客户端库来代替使用。