java mac地址转换,将字符串Mac地址转换为十六进制

I am trying to convert a string macaddress to hex value. I got a C# code which does the same thing but when I use the java code it gives me negative values. as in the C# code returns signed integer but how do i do the same in Java

following is part of my code

Integer hex = Integer.parseInt(MacAddress.subString(0,2), 16 );

MacAddress[0] = hex.byteValue();

i get something like 148 on the c# code and java returns -148 how can I sort this out thanks

UPDATE

and I just realised that my c# code returns a value of 214 to "D6" a part of the macaddress and the java code returns -42 which is strange

解决方案

String MacAddress="D6";

Integer hex = Integer.parseInt(MacAddress.substring(0,2), 16 );

byte byteArray=(byte) hex.intValue();

System.out.println(hex+"|"+hex.byteValue()+"|"+byteArray[0]+"|"+(int)(byteArray[0]&(0xff)));

byteValue() will give you your byte in signed format.You can store this in your byte array without any worries,just take care of conversion into unsigned value before using it.

If you dont want this conversion from signed to unsigned Make your MacAddress as char[].

char are by default considered as unsigned.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Technitium MAC Address Changer允许您立即更改(恶搞)网络接口卡(NIC)的媒体访问控制(MAC地址。它有一个非常简单的用户界面,并提供有关机器中每个网卡的充足信息。每个NIC都有制造商在其电路中硬编码的MAC地址。这个硬编码的MAC地址被Windows驱动程序用来访问以太网(LAN)。这个工具可以设置一个新的MAC地址到你的网卡,绕过原来的硬编码的MAC地址。Technitium MAC Address Changer是每个安全专家工具箱中必备的工具。 特征 适用于Windows 10,8和7,适用于32位和64位。 增强的支持IPv6的网络配置预设允许您在网络配置之间快速切换。 允许完整配置任何网络适配器。 具有完整软件功能的命令行选项。您可以从指定的预设文件中选择一个预设直接应用。 更新网卡供应商列表功能允许您从IEEE.org下载最新的供应商数据(OUI)。 它是如何工作的? 这个软件只是写入一个值到Windows注册表中。当启用网络适配器设备时,Windows在键HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Class \ {4D36E972-E325-11CE-BFC1- 08002bE10318} \ [NIC的ID,例如0001]中搜索注册表值“NetworkAddress”。如果存在一个值,windows将使用它作为MAC地址,如果没有,windows将使用硬编码的制造商提供的MAC地址。某些网络适配器驱动程序内置此设备。它可以在Windows设备管理器的网络适配器的设备属性中的高级设置选项卡中找到。 如何更改MAC地址 启动MAC地址转换器将列出所有可用的网络适配器。 选择您要更改MAC地址的适配器。你会在下面得到你的选择的细节。 在“信息”选项卡中,找到“更改MAC地址”框。在该字段中输入新的MAC地址,然后点击Change Now!按钮。您甚至可以点击随机MAC地址按钮,从可用的供应商列表中填入随机选择的MAC地址。 要恢复网络适配器的原始MAC地址,请选择该适配器,然后在更改MAC地址框中单击恢复原始按钮。 注意:此工具不能更改Microsoft网桥的MAC地址。Network Bridge将自动使用第一个添加到网桥的NIC的原始MAC地址MAC地址的第一个字节设置为0x02。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值