请问java中有没有直接读入16进制的方法;
比如c中就有一个很简单的库函数scanf("%x",&a);
像a这个十六进制数,java中也有类似的方法吗,还是必须按照字符串读入,然后自己处理成int?
有知情的高手透露下,谢谢
比如c中就有一个很简单的库函数scanf("%x",&a);
像a这个十六进制数,java中也有类似的方法吗,还是必须按照字符串读入,然后自己处理成int?
有知情的高手透露下,谢谢
调试欢乐多
int value = Integer.parseInt("FF",16);
下面这个觉得不错
public static void main(String[] args) { Scanner s = new Scanner(System.in);
String i;
while ((i = s.next()) != "0"){
System.out.println(decode(i));
}
}
public static String decode(String bytes)
{
ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);
String hexString= "0123456789ABCDEF";
for(int i=0;i <bytes.length();i+=2)
baos.write((hexString.indexOf(bytes.charAt(i)) <<4 |hexString.indexOf(bytes.charAt(i+1))));
return new String(baos.toByteArray());
}