一个发送消息的功能:
private void button2_Click(object sender, System.EventArgs e)
{
try
{
Byte[] sendByte=new Byte[64];
string send=rtb2.Text+"\r\n";
NetworkStream netStream=new NetworkStream(accSock);
sendByte=System.Text.Encoding.BigEndianUnicode.GetType(send.ToCharArray());//错误在这行:重载GetByte方法未获取"1参数"
netStream.Write(sendByte,0,sendByte.Length);
}
catch 
{
MessageBox.Show("连接尚未建立,无法发送!");
}
}

解决方案 »

  1.   

    sendByte=System.Text.Encoding.BigEndianUnicode.GetType(send.ToCharArray());//错误在这行:重载GetByte方法未获取"1参数
    ----------------------
    我觉得是char的数组无法转化为Byte数组造成的,不知道对不对
      

  2.   

    GetType 應該用 GetBytes吧.
      

  3.   

    错误:
    System.Text.Encoding不包含对GetBytes的定义
      

  4.   

    string str1 = "123";
    System.Text.Encoding.BigEndianUnicode.GetBytes( str1 );
      

  5.   

    楼上的这样用GetBytes不行,麻烦你能不能用其它的
      

  6.   

    ' Read a text file saved with Big Endian Unicode encoding.
             Dim encoding As System.Text.Encoding = System.Text.Encoding.BigEndianUnicode
             Dim reader As New StreamReader("TextFile.txt", encoding)
             Dim line As String = reader.ReadLine()
             While Not (line Is Nothing)
                Console.WriteLine(line)
                line = reader.ReadLine()
             End While
    你自己研究下咯。
      

  7.   

    看起来似乎是GetType的方法不对,你传的参数与方法不吻合?
      

  8.   

    System.Text.Encoding.BigEndianUnicode.GetType()这个方法是不带参数的
      

  9.   

    System.Text.Encoding.BigEndianUnicode.GetType()这个方法是不带参数的
    ----------------------------------
    你说得对,书上写的就是问题很多
      

  10.   

    sendByte=System.Text.Encoding.BigEndianUnicode.GetType(send.ToCharArray());最土的办法:
    string str = "123";

    Char[] chars = str.ToCharArray();
    int n = chars.Length;
    Byte[] bytes = new byte[n];
    int i = 0;
    foreach(char c in chars)
    {
    bytes[i] = Convert.ToByte(c);
    i ++;
    }
      

  11.   

    GetType不带参数的,你用GetBytes应该可以的:
    System.Text.Encoding.BigEndianUnicode.GetBytes()
      

  12.   

    string str = "123";
    Byte[] bytes = System.Text.Encoding.Default.GetBytes(str);
    str = System.Text.Encoding.Default.GetString(bytes);