byte[]   buf 已经是定义了...以数组的形式定义 Encoding.Default.GetBytes(   txtContent.Text   ); 是将txtContent.Text 转为二进制序列...

解决方案 »

  1.   

     byte[]   buf   这个不就是定义的么?
      

  2.   

       是的, byte[] buf  这就是声明的,声明一个数组
      

  3.   

    定义可以这样:
    byte[] buf=new byte[10000];  //声明一个长度为10000的字节数组当然也可以这样:
     byte[]   buf   =   Encoding.Default.GetBytes(   txtContent.Text   ); //声明字节数组并初始化赋值
      

  4.   

    byte[]       buf       =       Encoding.Default.GetBytes(       txtContent.Text       );   //声明字节数组并初始化赋值  这个没有NEW啊,怎么初始化啊!
      

  5.   

    这个初始化(new)的过程放在了GetBytes方法的内部,buf只是获得了数组的一个引用。过程类似于如下代码:
    byte[] byte1 = new byte[10];
    byte[] byte2 = byte1  //只是获得byte1的引用
      

  6.   

    呵呵,我以前就遇到过,
    如果不是用 Encoding.Default.GetBytes(str)的话,如果str 是汉字(也就是双字节的字符)
    那么得到的长度就是2,这样的话就得不到一个完整的汉字;
    如果用了 Encoding.Default.GetBytes()的话就是1,这样的话就可以得到正确的长度.如: 
    string str="Chn中国人";
    int Len1=str.Length;  //Len1=6;
    int Len2= Encoding.Default.GetBytes(str).Length;  //Len2=9,一个汉字两个字符;如果不用Encoding.Default.GetBytes()的话那你的buf如果想装下全部汉字的十六进制数值就溢出了.不知道说明白了没