c# - 獲取設備的MAC地址



windows-phone-8.1 bluetooth-lowenergy (1)

我正在編寫一個Windows Phone 8.1應用程序,發現附近的藍牙低功耗設備。

foreach (DeviceInformation device in devices)
{
    BluetoothLEDevice bleDevice = await BluetoothLEDevice.FromIdAsync(device.Id);
}

一切工作正常,但bleDevice.BluetoothAddress屬性包含一個ulong類型,而我需要一個字符串類型,如Mac地址格式。

例:

bleDevice.BluetoothAddress: 254682828386071(ulong)

所需的Mac地址: D1:B4:EC:14:29:A8(字符串)(這是我如何需要它的一個例子,而不是設備的實際Mac地址)

有沒有辦法將長的轉換為Mac地址? 還是有另一種方式直接發現的Mac地址沒有轉換? 我知道有一個工具名為“ In The HAnd - 32feet ,可以幫助我,但截至目前,Windows Phone 8.1不受支持。


您可以通過Google和找到許多主題。 無論如何,這是一個辦法:

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'




bluetooth-lowenergy