C#中
下⾯是msdn中的⼀个例⼦,在我刚看到这⾥例⼦时,该例⼦有三点是我可以学到的。
第⼀:排列格式。如:定义⼀个常量变量const  string  a="{0,11}{1,10},{2,7}"; 这样⼀个格式⽤来排列三个变量的位置,第⼀个变量占5个位置,第⼆个变量占8个位置,第三个变量占10个位置。中英⽂都算⼀个位置。⽐如在控制台上输出
Console.WriteLine(a,"以后想什么当另外⼀半","个⼜帅⼜有车的","那买副象棋吧"); 下⾯是这个测试的截图
如果,定义所占的位置少于要输⼊的字符,会⾃动增加,⽽不是截断。writeline教程
第⼆:BitConverter.ToUInt16()的⽤法,是把两个字节转换为⽆符号整数,如:205 56  这两个字节的16进制是 CD 38  那么转为⽆符号整数应该倒过来排即 38CD  这个数转为⽆符号⼗进制整数就是 14541
第三:BitConverter.ToString()的⽤法,这个就是把字节或字节数组转换为⼗六进制或⼗六进制的字符串形式,中间⽤“-”连接
下⾯是这个例⼦的完整代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BitConverter数据转换
{
class Program
{
//排列格式,第⼀个变量占五个位置,第⼆个变量占17个位置,第三个变量占10个位置    const string formatter = "{0,5}{1,17}{2,10}";
// Convert two byte array elements to a ushort and display it.
public static void BAToUInt16(byte[] bytes, int index)
{
//BitConverter⽤于基础数据跟字节数组相互转换
//BitConverter.ToUInt16()⽅法将字节数组指定位置起的两个字节转换为⽆符号整数      ushort value = BitConverter.ToUInt16(bytes, index);
//BitConverter.ToString()字节数组转换为⼗六进制的字符串形式
Console.WriteLine(formatter, index,
BitConverter.ToString(bytes, index, 2), value);
}
static void Main(string[] args)
{
byte[] byteArray = {
15, 0, 0, 255, 3, 16, 39, 255, 255, 127 };
Console.WriteLine(
"This example of the BitConverter.ToUInt16( byte[ ], " +
"int ) \nmethod generates the following output. It " +
"converts elements \nof a byte array to ushort values.\n");
Console.WriteLine("initial byte array");
Console.WriteLine("------------------");
Console.WriteLine(BitConverter.ToString(byteArray));
Console.WriteLine();
Console.WriteLine(formatter, "index", "array elements",
"ushort");
Console.WriteLine(formatter, "-----", "--------------",
"------");
/
/ Convert byte array elements to ushort values.
BAToUInt16(byteArray, 1);
BAToUInt16(byteArray, 0);
BAToUInt16(byteArray, 3);
BAToUInt16(byteArray, 5);
BAToUInt16(byteArray, 8);
BAToUInt16(byteArray, 7);
Console.ReadKey();
}
}
}
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。