วิธี BitConverter.ToDouble() ใน C# ใช้เพื่อส่งคืนตัวเลขทศนิยมที่มีความแม่นยำสองเท่าซึ่งแปลงจากแปดไบต์ที่ตำแหน่งที่ระบุในอาร์เรย์ไบต์
ซิงโครไนซ์
ไวยากรณ์มีดังนี้ −
public static double ToDouble (byte[] val, int begnIndex);
ด้านบน val คืออาร์เรย์ไบต์ ในขณะที่ begnIndex เป็นตำแหน่งเริ่มต้นภายใน val
ตัวอย่าง
เรามาดูตัวอย่างกัน −
using System; public class Demo { public static void Main(){ byte[] arr = { 0, 2, 5, 10, 20, 26, 34, 42, 50, 58, 66, 74, 82, 89, 97, 107, 115}; Console.WriteLine("Byte Array = {0} ", BitConverter.ToString(arr)); for (int i = 1; i < arr.Length - 7; i = i + 8) { double values = BitConverter.ToDouble(arr, i); Console.WriteLine("\nValue = "+arr[i]); Console.WriteLine("Result = "+values); } } }
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
Byte Array = 00-02-05-0A-14-1A-22-2A-32-3A-42-4A-52-59-61-6B-73 Value = 2 Result = 4.84667324189914E-67 Value = 58 Result = 9.57203245252997E+247
ตัวอย่าง
เรามาดูตัวอย่างอื่นกัน −
using System; public class Demo { public static void Main(){ byte[] arr = { 0, 3, 7, 10, 18, 20, 25, 26, 34}; Console.WriteLine("Byte Array = {0} ", BitConverter.ToString(arr)); for (int i = 1; i < arr.Length - 7; i = i + 8) { double values = BitConverter.ToDouble(arr, i); Console.WriteLine("\nValue = "+arr[i]); Console.WriteLine("Result = "+values); } } }
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
Byte Array = 00-03-07-0A-12-14-19-1A-22 Value = 3 Result = 2.09001158167895E-144