我遇到一个怪问题,假设我有一个字节数组a,大小是100,用System.Convert.ToBase64String(a)转化成string Stra,但是我把这个字节数组分成两个大小是50的数组分开转换,变成Strb和Strc,Strd=Strb+Strc,奇怪的是Stra的内容和Strd不一样(Stra的前一半和Strd的前一半一样,后一半不样),这是为什么?我分开转换怎么样才能得到和Stra一样的内容?

解决方案 »

  1.   

    to 变成Strb和Strc,Strd=Strb+Strc,奇怪的是Stra的内容和Strd不一样(Stra的前一半和Strd的前一半一样,后一半不样),这是为什么?我分开转换怎么样才能得到和Stra一样的内容?数组不能这样操作。数组的复制,如下:
    byte[] bData = new byte[ A.Length + B.Lenth ];
    Array.Copy( A, bData, A.Length );//Copy first array
    Array.Copy( B,0, bData, A.Length, B.Length );//Copy second array
      

  2.   

    如果是string类型的话,把你操作过程贴出来
      

  3.   

    转回string的时候如果把数组截断分别转容易出现问题,比如一个汉字被拆成2个字节,如果正好被从中间截断那分别转换然后组合起来肯定不是以前的字符串了