byte[] data = new byte[50];
我怎么用简单的方法把data中的第X字节到第Y个字节的内容复制到另外一个字节数组中?
现在用的方法是for,但是这个操作太多。希望能有什么简单的方法。

解决方案 »

  1.   

    private byte[] GetBytes(byte[] b,int startindex,int datalen)
    {
    byte[] redata = new byte[datalen];//
    for(int i=startindex;i<startindex + datalen;i++)
    {
    redata[i-startindex] = b[i]; 
    }
    return redata;
    }这是我现在的方法
      

  2.   

    Array.Copy 方法 (Array, Int32, Array, Int32, Int32)请参见从指定的源索引开始,复制 Array 中的一系列元素,将它们粘贴到另一 Array 中(从指定的目标索引开始)。长度和索引指定为 32 位整数。
      

  3.   

    [C#]
    public static void Copy(
       Array sourceArray,
       int sourceIndex,
       Array destinationArray,
       int destinationIndex,
       int length
    );参数
    sourceArray 
    Array,它包含要复制的数据。
     
    sourceIndex 
    一个 32 位整数,它表示 sourceArray 中复制开始处的索引。 destinationArray 
    Array,它接收数据。 destinationIndex 
    一个 32 位整数,它表示 destinationArray 中存储开始处的索引。
     
    length 
    一个 32 位整数,它表示要复制的元素数目。
      

  4.   

    public static void Copy(
       Array sourceArray,
       int sourceIndex,
       Array destinationArray,
       int destinationIndex,
       int length
    );
    参数
    sourceArray 
    Array,它包含要复制的数据。 
    sourceIndex 
    一个 32 位整数,它表示 sourceArray 中复制开始处的索引。 
    destinationArray 
    Array,它接收数据。 
    destinationIndex 
    一个 32 位整数,它表示 destinationArray 中存储开始处的索引。 
    length 
    一个 32 位整数,它表示要复制的元素数目。