当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C# BitConverter用法及代码示例


BitConverter 类的用途是将基本数据类型转换为字节数组,并将字节数组转换为基本数据类型。该类定义在System 命名空间下。此类提供了不同类型的方法来执行转换。本质上,一个字节被定义为一个 8 位无符号整数。此类有助于以基本形式(作为一系列字节)操作值类型。它是在静态方法的帮助下完成的。 BitConverter 类的静态方法用于在每个基本类型与字节数组之间进行转换。

场地:

  • IsLittleEndian:这表示该计算机体系结构中存储数据的字节顺序(“endianness”)。

Methods

方法 说明
BitConverter.DoubleToInt64Bits() 将指定的双精度浮点数转换为 64 位有符号整数。
GetBytes() 将指定数据转换为字节数组。
Int32BitsToSingle() 将指定的 32 位有符号整数转换为单精度浮点数。
BitConverter.Int64BitsToDouble() 将指定的 64 位有符号整数转换为双精度浮点数。
SingleToInt32Bits() 将指定的单精度浮点数转换为 32 位有符号整数。
BitConverter.ToBoolean() 返回从字节数组中指定位置的字节转换而来的布尔值。
BitConverter.ToChar() 返回从字节数组中指定位置的两个字节转换而来的 Unicode 字符。
BitConverter.ToDouble() 返回由字节数组中指定位置的八个字节转换而来的双精度浮点数。
BitConverter.ToInt16() 返回由字节数组中指定位置的两个字节转换而来的 16 位有符号整数。
BitConverter.ToInt32() 返回从字节数组中指定位置的四个字节转换而来的 32 位有符号整数。
BitConverter.ToInt64() 返回从字节数组中指定位置的八个字节转换而来的 64 位有符号整数。
BitConverter.ToSingle() 返回由字节数组中指定位置的四个字节转换而来的单精度浮点数。
BitConverter.ToString(Byte[]) 将指定字节数组的每个元素的数值转换为其等效的十六进制字符串表示形式。
BitConverter.ToUInt16 返回由字节数组中指定位置的两个字节转换而来的 16 位无符号整数。
BitConverter.ToUInt32 返回由字节数组中指定位置的四个字节转换而来的 32 位无符号整数。
BitConverter.ToUInt64 返回由字节数组中指定位置的八个字节转换而来的 64 位无符号整数。

示例 1:


// C# program to illustrate the 
// use of GetBytes(Int64) method 
using System; 
  
class GFG { 
  
    // Main method 
    static public void Main() 
    { 
  
        // Creating and initializing an array 
        long[] ele = {0, long.MaxValue, long.MinValue, 
                         1000000000000000, -100000000,  
                       0xDDDDDDDDD, -0xAAAAAAAAAAAA }; 
  
        // Display the elements 
        Console.WriteLine("Elements are:"); 
        foreach(long i in ele) 
        { 
            Console.WriteLine(i); 
        } 
  
        foreach(var num in ele) 
        { 
  
            // Get the specified 64-bit signed 
            // integer value as an array of bytes. 
            // using GetBytes(Int64) method 
            byte[] BArr = BitConverter.GetBytes(num); 
  
            // Display the elements 
            Console.WriteLine("Element: {0}",  
                BitConverter.ToString(BArr)); 
        } 
    } 
} 

输出:

Elements are:
0
9223372036854775807
-9223372036854775808
1000000000000000
-100000000
59556879837
-187649984473770
Element: 00-00-00-00-00-00-00-00
Element: FF-FF-FF-FF-FF-FF-FF-7F
Element: 00-00-00-00-00-00-00-80
Element: 00-80-C6-A4-7E-8D-03-00
Element: 00-1F-0A-FA-FF-FF-FF-FF
Element: DD-DD-DD-DD-0D-00-00-00
Element: 56-55-55-55-55-55-FF-FF

示例 2:


// C# program to illustrate the 
// use of Int64BitsToDouble(Int64) 
// method 
using System; 
  
class GFG { 
  
    // Main method 
    static public void Main() 
    { 
  
        long ele = 0xFFFFFFFFFFFFFFF; 
  
        // Converts the given 64-bit signed 
        // integer to a double-precision  
        // floating point number using the  
        // Int64BitsToDouble(Int64) method 
        double R = BitConverter.Int64BitsToDouble(ele); 
  
        // Display the element 
        Console.WriteLine("Converted Element is : {0}", R); 
    } 
} 

输出:

Converted Element is : 1.28822975391943E-231

参考:



相关用法


注:本文由纯净天空筛选整理自ankita_saini大神的英文原创作品 C# | BitConverter Class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。