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)); }
public static byte[] GetBytes(double value, DoubleSwap IsSwap) { var t = BitConverter.GetBytes(value); switch (IsSwap) { case DoubleSwap.C76543210: Array.Reverse(t); break; } return(t); }
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()); }
public DoubleItem(string text, DoubleSwap swap) : base(text) { SwapType = swap; }