■ BitConverter 클래스 : 빅 엔디안(Big Endien) 바이트 배열에서 정수 구하기

------------------------------------------------------------------------------------------------------------------------

using System;

 

#region 정수 구하기 -  GetInteger(sourceArray)

 

/// <summary>

/// 정수 구하기

/// </summary>

/// <param name="sourceArray">소스 바이트 배열</param>

/// <returns>정수</returns>

/// <remarks>소스 바이트 배열은 1, 2, 4바이트에 한정한다.</remarks>

public int GetInteger(byte[] sourceArray)

{

    if(BitConverter.IsLittleEndian)

    {

        Array.Reverse(sourceArray);

    }

 

    int targetValue = 0;

 

    switch(sourceArray.Length)

    {

        case 1 : targetValue = (int)sourceArray[0];                  break;

        case 2 : targetValue = BitConverter.ToInt16(sourceArray, 0); break;

        case 4 : targetValue = BitConverter.ToInt32(sourceArray, 0); break;

    }

 

    return targetValue;

}

 

#endregion

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG

댓글을 달아 주세요