Hallo,
ich möchte aus einem vierstelligen Bytefeld einen achtstelligen Hexstring erzeugen und diesen anschließend in einen Dezimalwert umrechnen. Das Codebeispiel stellt meinen Weg dar, um das Ziel zu erreichen. Ich vermute jedoch, daß dieser Weg nicht der effizienteste ist, da langsam. Wer kennt einen besseren Weg?
Gruß
jabonva
ich möchte aus einem vierstelligen Bytefeld einen achtstelligen Hexstring erzeugen und diesen anschließend in einen Dezimalwert umrechnen. Das Codebeispiel stellt meinen Weg dar, um das Ziel zu erreichen. Ich vermute jedoch, daß dieser Weg nicht der effizienteste ist, da langsam. Wer kennt einen besseren Weg?
Gruß
jabonva
Code:
public class test
{
public static void main( String[] args )
{
//Ausgangssituation (hex->00000100; dez->256)
byte[] data = new byte[4];
data[0] = 0;
data[1] = 1;
data[2] = 0;
data[3] = 0;
//aus data wird ein hexString erstellt
String a = Integer.toHexString(data[0]);
if ( a.length() == 1 ) a = new String("0"+a);
String b = Integer.toHexString(data[1]);
if ( b.length() == 1 ) b = new String("0"+b);
String c = Integer.toHexString(data[2]);
if ( c.length() == 1 ) c = new String("0"+c);
String d = Integer.toHexString(data[3]);
if ( d.length() == 1 ) d = new String("0"+d);
String hexString = new String(d+c+b+a);
//Hexstring (00000100) nach Dezimal (256)
int number = Integer.parseInt(hexString, 16);
}
}