Beispiel #1
0
        public static double ToDouble(byte[] data, int start, DoubleSwap swap)
        {
            var temp = new byte[8];

            for (int i = 0; i < 8; i++)
            {
                temp[i] = data[start + i];
            }

            switch (swap)
            {
            case DoubleSwap.C76543210:
                Array.Reverse(temp);
                break;

            case DoubleSwap.CNormal:
                temp[0] = data[start + 1];
                temp[1] = data[start + 0];
                temp[2] = data[start + 3];
                temp[3] = data[start + 2];

                temp[4] = data[start + 5];
                temp[5] = data[start + 4];
                temp[6] = data[start + 7];
                temp[7] = data[start + 6];

                break;
            }

            return(BitConverter.ToDouble(temp, 0));
        }
Beispiel #2
0
        public static byte[] GetBytes(double value, DoubleSwap IsSwap)
        {
            var t = BitConverter.GetBytes(value);

            switch (IsSwap)
            {
            case DoubleSwap.C76543210:
                Array.Reverse(t);
                break;
            }

            return(t);
        }
Beispiel #3
0
        public static ItemsBase[] BuildList(DoubleSwap swap, string[] strName)
        {
            if (strName == null || strName.Length <= 0)
            {
                return(null);
            }

            var lst = new List <ItemsBase>(strName.Length);

            for (int i = 0; i < strName.Length; i++)
            {
                lst.Add(new DoubleItem(strName[i], swap));
            }

            return(lst.ToArray());
        }
Beispiel #4
0
 public DoubleItem(string text, DoubleSwap swap)
     : base(text)
 {
     SwapType = swap;
 }