java 提供一个byte数组 将每个不足两位的前面补0,返回新的byte数组

byte[]b2=newbyte[12];b2[0]=(byte)48;b2[1]=(byte)0;b2[2]=(byte)28;b2[3]=(byte)0;b2[4]=... byte[] b2 = new byte[12];
b2[0]=(byte) 48;
b2[1]=(byte) 0;
b2[2]=(byte) 28;
b2[3]=(byte) 0;
b2[4]=(byte) 1;
返回
byte[] b2 = new byte[12];
b2[0]=(byte) 48;
b2[1]=(byte) 00;
b2[2]=(byte) 28;
b2[3]=(byte) 00;
b2[4]=(byte) 01;
求方法。
在这个方法里加也行,我是把String转byte数组

public static byte[] hexStringToBytes(String hexString) {

hexString = hexString.toUpperCase();
int length = hexString.length() / 2;
char[] hexChars = hexString.toCharArray();
byte[] d = new byte[length];
for (int i = 0; i < length; i++) {
int pos = i * 2;
d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1])); //此处判断d[i]不足两位在前面加0;
}
return d;
}
展开
 我来答
biubiubiu_zJJ
2019-09-10
知道答主
回答量:3
采纳率:0%
帮助的人:2027
展开全部
我最近在项目中也遇到了同样的问题,我也和楼主是同样的想法,但是我在遍历的时候 不足两位在前面加0 的时候,返回的值依旧还是一位数,正在为此事苦恼中~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
无月的天很蓝
2015-10-14 · TA获得超过1779个赞
知道大有可为答主
回答量:2551
采纳率:44%
帮助的人:1272万
展开全部
byte类型是分不清0和00的。所以这个需求不成立
追问
我补充了问题,麻烦您看下,在那个方法里面怎么判断,然后加0
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式