读书人

将十六进制字符串不能转直接存到byt

发布时间: 2012-05-09 12:13:59 作者: rapoo

将十六进制字符串不能转,直接存到byte[]里面?
String str = "ffffffffffff38771622";

byte[] b = new byte[32];


我想把str每从位不转直接存到b这个byte数组里面。 怎么存呢?

不是把f转成102来存。

[解决办法]

Java code
b = str.getBytes("ISO-8859-1");
[解决办法]
探讨

str = "ffffffffffff38771622";

其实我这个就是,内容了。你那是什么意思 ?

我想达到的效果
b[0]=f
b[1]=f
b[2]=f
b...
b[]=3
b[]=8
b[]=7
b[]=7
...

[解决办法]
再看了下,1楼的意思也一样,只不过都要再手工循环一边处理。

就是按条件的执行 b[0] = (byte) b[0]-'a'; 或者 b[0] = (byte) b[0]-'0';
[解决办法]
str.toCharArray()
获得char[]型结果
[解决办法]
Java code
            String str = "ffffffffffff38771622";            byte[] b = new byte[str.length()];            for (int i=0; i<b.length; i++) {                b[i] = (byte)(Integer.parseInt(str.substring(i,i+1),16));            }            System.out.println(Arrays.toString(b));
[解决办法]
toCharArray()

读书人网 >J2SE开发

热点推荐