将MAC地址递增1

问题描述

我有一个看似简单的请求,但我不知道如何在C#中进行。我已经搜索过,只找到了使用其他语言的答案。

我有一个包含MAC地址的字符串。例如,string sMyMACAddress = "00:1D:FE:12:37:1A";

如何获取此MAC地址,将其递增1,然后在新字符串(例如sMyNextMACAddress)中弹出结果新的下一个顺序MAC地址?

有人可以帮我这个忙,或者至少可以向我指出正确的方向吗?

根据最新建议,我尝试了以下方法。更新:我在下面提供了答案,因为在接受答案之前,我的问题已经关闭

string sMACAddressIn = "00:1D:FE:12:37:1A";
string sMACAddressOut = "";

Console.WriteLine("MAC Address going in: " + sMACAddressIn); 

sMACAddressIn = sMACAddressIn.Replace(":","");  // Format this otherwise you get an incorrect format error on numberstyles.hexnumber

long iLastMACAddressHex = long.Parse(sMACAddressIn,NumberStyles.Hexnumber);
iLastMACAddressHex++;
sMACAddressOut = string.Join(":",BitConverter.GetBytes(iLastMACAddressHex).Reverse() .Select(b => b.ToString("X2"))).Substring(6);

Console.WriteLine("MAC Address going out: " + sMACAddressOut);
Console.Read();

我得到以下结果。

要输入的MAC地址:00:1D:FE:12:37:1A

MAC地址发送出去:00:1D:FE:12:37:1B

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)