也可以先转换一下
public class Test1{
public static long BCDtoInt(String s ) {
long sum = 0;
for(int i=0,len=s.length(); i<len; i++ ) {
int a = s.codePointAt(i)-0x30;
sum = sum * 10+a;
}
return sum;
}
public static String ByteToHexString(byte[] a ) {
String s="";
for(int i=0,len=a.length;i<len;i++) {
s += Integer.toHexString(new Byte(a[i]).intValue());
}
return s;
}
public static void main(String[] args){
System.out.println(BCDtoInt("2635"));
byte[] t={0x26,0x35};
System.out.println(BCDtoInt(ByteToHexString(t)));
}
}
public class Test1{
public static long BCDtoInt(String s ) {
long sum = 0;
for(int i=0,len=s.length(); i<len; i++ ) {
int a = s.codePointAt(i)-0x30;
sum = sum * 10+a;
}
return sum;
}
public static long ByteBCDtoInt(byte[] a ) {
long sum = 0;
int b;
for(int i=0,len=a.length;i<len;i++) {
b = new Byte(a[i]).intValue();
int n = (b & 0xf0)>>4,
m = b & 0x0f;
sum = sum*10+n;
sum = sum*10+m;
}
return sum;
}
public static void main(String[] args){
System.out.println(BCDtoInt("2635"));
byte[] t={0x26,0x35};
System.out.println(ByteBCDtoInt(t));
}
}
// 字节顺序LZ自己搞定, 后面是几位小数,在适当的位置上插入小数点。
public class Test1{
public static long BCDtoInt(String s ) {
long sum = 0;
for(int i=0,len=s.length(); i<len; i++ ) {
int a = s.codePointAt(i)-0x30;
sum = sum * 10+a;
}
return sum;
}
public static void main(String[] args){
System.out.println(BCDtoInt("2635"));
}
}