我正在写一个Windows Phone 8.1应用程序,它可以发现附近的Bluetooth Low Energy设备。
foreach (DeviceInformation device in devices)
{
BluetoothLEDevice bleDevice = await BluetoothLEDevice.FromIdAsync(device.Id);
}
一切正常,但该bleDevice.BluetoothAddress
属性包含一个ulong
类型,而我需要一个字符串类型,其格式类似于Mac Address。
例子:
bleDevice.BluetoothAddress: 254682828386071(ulong)
所需的Mac地址: D1:B4:EC:14:29:A8(字符串)(这是我需要它的示例,而不是设备的实际Mac地址)
有没有一种方法可以将long转换为Mac地址?还是有另一种方法可以直接发现Mac地址而不进行转换?我知道有一个名为的工具In The HAnd - 32feet
可以为我提供帮助,但是到目前为止,不支持Windows Phone 8.1。
您可以通过Google以及StackOverflow上找到许多主题。无论如何,这是一种实现方法:
ulong input = 254682828386071;
var tempMac = input.ToString("X");
//tempMac is now 'E7A1F7842F17'
var regex = "(.{2})(.{2})(.{2})(.{2})(.{2})(.{2})";
var replace = "$1:$2:$3:$4:$5:$6";
var macAddress = Regex.Replace(tempMac, regex, replace);
//macAddress is now 'E7:A1:F7:84:2F:17'
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句