作者kangta198109 (北极星愿N)
看板java
标题Re: [问题] Byte型态转换
时间Tue Sep 26 15:19:22 2006
※ 引述《PsMonkey (痞子军团团长)》之铭言:
: ==站内信件===
: ※ 引述《kangta198109 (北极星愿N)》之铭言:
: : 我利用6个JTextField想输入MAC的address (型态Byte[])
: : 请问一下要如何将String转成符合MAC address
: : ex:
: : 我输入b4 会超出byte范围...请问一下该怎麽解决??
: : (不知道是不是有号无号数的问题)
: : 这样叙述不知道有没有人看的懂
: 当然... 看不懂...
: 1. 为啥你要用 byte 型态?
: 2. 你有没有先 check 一下 byte 型态的大小范围?
: 3. 接第二点,你是几个字塞在 byte[] 中的一个 element?
: 或着,当好人换个问法问你
: 你是宣告 byte[] foo = new byte[6]
: 还是 byte[] foo = new byte[12] 或是....
: 4. 算是题外话,请小心大小写
: 以语言的角度而言,byte[] 跟 Byte[] 差非常多
非常抱歉!!!
在JPcap中EthernetPacket中的MAC位址
资料型态便是byte[](小写)
想法是这样,我想要直接输入MAC位址
例如:00:13:e4:c4:4c:67(一般MAC的显示方法)
对照MAC位址存入byte[]!!!
问题便是当我将其输入资料欲一格格存入byte[]中
有些会发生超出范围
就我猜想是因为我输入的资料00:13:e4:c4:4c:67
均是16进制的无号数,但byte是有号数,所以会这样
不知道有没有人知道该怎麽转换
让我好好学习一下,多谢大家
附上部份程式码:
srcMAC[i] = Byte.valueOf(srcMACText[i].getText(),16);
dstMAC[i] = Byte.valueOf(dstMACText[i].getText(),16);
//srcMAC[i]:资料型态byte
//dstMAC[i]:资料型态byte
//srcMACText[i]:输入的资料(String)
//dstMACText[i]:输入的资料(String)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.112.86.60