发射端:
string msg =  "FileType\n";
byte[] byData = System.Text.Encoding.UTF8.GetBytes(msg);
clientSocket.Send(byData);接受端:public  void OnDataReceived(IAsyncResult asyn)
{SocketPacket socketData = (SocketPacket)asyn.AsyncState ;
try
{
int iRx  = socketData.currentSocket.EndReceive(asyn);
char[] chars = new char[iRx +  1];
System.Text.Decoder decoder = System.Text.Encoding.UTF8.GetDecoder();
int charLen = decoder.GetChars(socketData.dataBuffer, 0, iRx, chars, 0);
System.String sClientMessage=new System.String(chars);string scmessage=socketData.clientNumber.ToString()+"客户端"+sClientMessage;
LiDetail.Items.Add(scmessage);/这里可以看到收到字符FileType
}
if(sClientMessage.Trim()=="FileType")//判断
{
LiDetail.Items.Add("GetFileType");
}//但这里没有看到GetFileType  与前面的矛盾?????
请问这是为什么了?
求求大家指教!!!

解决方案 »

  1.   

    if(sClientMessage.Trim()=="FileType/n")//加了"/n"也还是一样  请问是那里出了问题呢?
      

  2.   

    你在System.String sClientMessage=new System.String(chars);这句后面写上MessageBox.Show(sClientMessage);就知道究竟是什么东西了.
      

  3.   

    LiDetail.Items.Add(scmessage);也是一样的 这里看到了FileType
    但在判断if(sClientMessage.Trim()=="FileType")这里没有呢
      

  4.   

    Debug一下看看sClientMessage是什么值