Ich versuche, eine App auf dem LAN-PC zu wecken.Get Bytes mac Adresse zu wecken auf LAN
Auf dieser Seite habe ich ein Java-Beispiel gefunden: https://www.sistemasorp.es/2005/06/13/wake-on-lan-y-magic-packet/ aber ich bin verwirrt, wie Mac-Adresse Bytes zu bekommen.
Wie kann Bytes erhalten?
In der Web-Seite:
**byte** mac[]={0x01,0x02,0x03,0x04,0x05,0x06};
In dieser Frage: (How to convert a Mac Address to a Hex and pass it to a bytearray in java)
**Byte**[] macAddressBytes = new Byte[6];
...
Integer hex = Integer.parseInt(macAddressParts[i], 16);
macAddressBytes[i] = hex.byteValue();
(Byte vs Byte)
ich diesen Code:
String output="";
byte mac1_1[]={0x01,0x02,0x03,0x04,0x05,0x06};
output+="mac1_1= "+mac1_1.toString()+"\n";
Byte mac1_2[]={0x01,0x02,0x03,0x04,0x05,0x06};
output+="mac1_2= "+mac1_2.toString()+"\n";
String mac2String="010203040506";
byte mac2_1[]=mac2String.getBytes();
output+="mac2_1= "+mac2_1.toString()+"\n";
String mac3 = "01:02:03:04:05:06";
String[] macAddressParts = mac3.split(":");
byte[] mac3_1 = new byte[6];
Byte[] mac3_2 = new Byte[6];
for(int i=0; i<6; i++){
Integer hex = Integer.parseInt(macAddressParts[i], 16);
mac3_1[i] = hex.byteValue();
mac3_2[i] = hex.byteValue();
}
output+="mac3_1= "+mac3_1.toString()+"\n";
output+="mac3_2= "+mac3_2.toString()+"\n";
System.out.println(output);
und ich bekomme dieses Ergebnis:
mac1_1= [[email protected]
mac1_2= [Ljava.lang.Byte;@52e922
mac2_1= [[email protected]
mac3_1= [[email protected]
mac3_2= [Ljava.lang.Byte;@647e05
alle Bytes sind unterschiedlich!
Jemand weiß, welches ist richtig?
Da toString den Code Objekt Hash Ausdrucken wird, nicht der Wert sehen kann. –
Ja, gerade jetzt sehe ich ... –