我一直在乱用C#中的TCP套接字,我在与我设置的FTP服务器通信时遇到了一些麻烦.我最初可以连接并获得220消息,但是当我发送"USER nrcrast"命令时,我从未得到响应,并且DataAvailable属性返回false.谁知道我做错了什么?到目前为止,这是我的代码:
namespace TCPClient
{
public partial class TCPClientForm : Form
{
private TcpClient myClient;
NetworkStream stream;
public TCPClientForm()
{
InitializeComponent();
send();
}
void send()
{
while (true)
{
try
{
myClient = new TcpClient("nrcrast.dyndns.info", 21);
break;
}
catch (SocketException ex)
{
Console.WriteLine(ex.ToString());
}
}
stream = myClient.GetStream();
int sendOffset = 0;
int recOffset=0;
int dataLength;
Byte[] receiveData = new Byte[256];
// wait for a response
dataLength = stream.Read(receiveData, recOffset, receiveData.Length);
String recvdMessage = System.Text.Encoding.ASCII.GetString(receiveData, 0, dataLength);
Console.WriteLine(recvdMessage.ToString());
recOffset+=dataLength;
String …Run Code Online (Sandbox Code Playgroud)