a和b是什么~?计算机中任何东西都是有bit组成的~有因为我们一般只思考 byte= 8个bit所以你试试把a和b转成byte,

解决方案 »

  1.   

    首先要看你要写入什么内容,能不能完整的写到8个字节里,写入可以 用stream写入
      

  2.   

     byte[] data = new byte[16];
                string a= this.textBox3.Text;
      string b= this.textBox4.Text;
      

  3.   


     byte[] data = new byte[16];
                string a= this.textBox3.Text;
      string b= this.textBox4.Text;
      

  4.   

    8个字节,long类型么long a,b;
    byte[] ab=BitConverter.GetBytes(a);
    byte[] bb=BitConverter.GetBytes(b);
    //然后再填充byte[] data
      

  5.   

    Encoding.Unicode.GetBytes(a).CopyTo(data,0);
    Encoding.Unicode.GetBytes(b).CopyTo(data,7);
      

  6.   

    byte[] a=new byte[8], b=new byte[8];
    var data=new byte[16];
    var len=data.Length;
    for(var i=1; i<=len,i++){
    var num=(byte)(len/2);
    if(i<num){
    data[i]=a[i];
    }
    else{
    data[i]=b[i+num];
    }
    }
      

  7.   

    long a = BitConverter.GetInt32(data, 0);
    long b = BitConverter.GetInt32(data, 7);
     
      

  8.   

    你只说a和b是字符串,字符串里又是什么,你想如何转成byte[ ]?
    是10进制数字,16进制数字,ASCII码,还是GB2312??
      

  9.   

    我来简单实现一下你的需求。
    byte[] data = new byte[16];
    byte[] a= System.Text.Encoding.Default.GetBytes("a");
    byte[] b= System.Text.Encoding.Default.GetBytes("b");
    for(int i=0;i<a.length;i++)
    {
    data [i]=a[i];
    }
    for(int i=0;i<b.length;i++)
    {
    data [i+8]=b[i];
    }
      

  10.   

      string data1 = textBox1.Text;
       string data2 = textBox2.Text;
              
                 Encoding.ASCII.GetBytes(data1).CopyTo(data, 0);
                 Encoding.ASCII.GetBytes(data2).CopyTo(data, 8);
                    for (int i = 0; i < data.Length; i++) { listBox1.Items.Add(i + "==" + data[i]); }
                    listBox1.Items.Add(System.Text.Encoding.ASCII.GetString(data).Trim('\0'));
               
    data1=13  ,data2=65
    byte输出结果:0=49,1=51,2=0,3=0,4=0,5=0,6=0,7=0,8=54,9=53,10=0,11=0,12=0,13=0,14=0,15=0
    byte转化为strring输出结果:13
    后面的65没有
      

  11.   


    data1 data2 有的是数字,有的是字符
      

  12.   

    不可能没有,13和65之间有很多空格而已那是byte转化为strring 的方法不对吗
      

  13.   

    listBox1.Items.Add(System.Text.Encoding.ASCII.GetString(data).Trim('\0'));转化没问题(虽然trim意义不明……)这样listBox1里应该是一个“13      65      ”,确定不是box没显示全?
      

  14.   

    不可能没有,13和65之间有很多空格而已
    那是byte转化为strring 的方法不对吗
    既然你把2个字符串分别放到高8位和低8位
    转string也应该先拆成2个数组,分别转啊
    字符串以\0结尾,你第二个字符串放到了\0的后面,就认不出来了
      

  15.   

    listBox1.Items.Add(System.Text.Encoding.ASCII.GetString(data).Trim('\0'));转化没问题(虽然trim意义不明……)这样listBox1里应该是一个“13      65      ”,确定不是box没显示全?发现Console.WriteLine能显示……窗口不行= =