Variablen string nach byte

hasso

Mitglied
Hallo,

ich hab ein Problem beim umwandeln von string nach byte.
Als Input kommt ein string der Form:

"0x10 0xDE 0x30 0x4A"

beliebiger Länge.
Ich hätte jetzt einfach gerne ein byte-Array mit 4 Feldern.

Versucht hab ich bisher:

1. string.getbytes(), allerdings liest er mir da aus dem oberen String mit 4Byte ganze 19Byte aus ???:L

2. string.split(" "), und dann einfach das string-Array durchlaufen und per (byte) in das byte-Array casten, dies lässt er aber gar nicht erst zu.

Bin mit meinem Latein am Ende. string.getbytes() erscheint mir am sinnvollsten aber ich verstehe null was er da macht weil es stimmt hinten und vorne nicht was rauskommt.

Grüße
 

Bile Demon

Bekanntes Mitglied
Die Lösung für dein Problem habe ich jetzt zwar nicht parat, aber das wird so natürlich nicht funktionieren. Dein String besteht ja nun nicht aus 4 Byte, sondern genau aus 19 Byte.

Du wirst dir irgendwas schreiben müssen, was jeweils die Zeichenkombination "0x10" in eine entsprechende Byte-Repräsentation umwandelt.

Edit: Was ich jetzt versucht hätte:
Code:
byte bValue = (byte) Integer.parseInt("CE", 16);

"CE" ersetze durch deine Hexwerte
 
Zuletzt bearbeitet:
S

SlaterB

Gast
splitten, 0x entfernen, das ist die handwerkliche Arbeit,
gibt übrigens auch Byte.parseByte(..,16);

> string.getbytes() erscheint mir am sinnvollsten aber ich verstehe null was er da macht

würdest du zumindest verstehen wenn ein String "ich bin ein String und mein Wert ist so viele Bytes wie der Eiffelturm an Metern hoch ist" nicht automation in getBytes() umgerechnet wird?
Java kann doch nicht beliebige Textinfos analysieren, weder die schwersten Rätsel noch 0x als Text,
getBytes() liefert jedes Zeichen einzeln, was auch sonst
 
Zuletzt bearbeitet von einem Moderator:

hasso

Mitglied
Hallo,

gelöst habe ich es jetzt folgendermaßen:

Code:
public String xxTESTxx(String data) throws TerminalException
{			
	String[] splitData = data.split(" ");
	byte[] buffer = new byte[splitData.length];
	for(int i = 0; i < splitData.length; i++)
	{
		buffer[i] = (byte)Integer.parseInt(splitData[i].substring(2), 16);
	}
	return "";
}


gibt übrigens auch Byte.parseByte(..,16);

Byte.parseByte hab ich auch gefunden, wirft aber Exceptions bei zBsp. dem string "AF".



getBytes() liefert jedes Zeichen einzeln, was auch sonst

Ja, was auch sonst. Gerade das verstehe ich ja nicht, ein Byte besteht doch immer aus zwei Zeichen.
"F" ist kein Byte sondern nur 4Bit. Der String "AFFE" hat in meinen Augen genau 2Byte und nicht 4. deswegen sagte ich auch das mir nicht klar ist was er da tut. Jedes Zeichen einzeln und hängt dann 4 Nullen vorn dran ? Wer braucht denn sowas ? Versteh ich nicht.
 

Bile Demon

Bekanntes Mitglied
Der String "AFFE" hat in meinen Augen genau 2Byte und nicht 4. deswegen sagte ich auch das mir nicht klar ist was er da tut.

Nein, der String "AFFE" hat 4 Byte, bei Unicode sogar 8. Es ist eben ein String und der wird als Text gespeichert. Der Wert für den "AF" hexadezimal steht, muss binär gespeichert und ausgelesen werden, und nicht als Text, dann passt das mit den 2 Byte.
 

hasso

Mitglied
Okay, danke, dann hab ichs geblickt, er interpretiert dann nicht das hexadezimale "A" als Byte sondern den internen Speicher für das Stringzeichen "A".
 
H

hüteüberhüte

Gast
Hallo,

ich hab ein Problem beim umwandeln von string nach byte.
Als Input kommt ein string der Form:

"0x10 0xDE 0x30 0x4A"

beliebiger Länge.
Ich hätte jetzt einfach gerne ein byte-Array mit 4 Feldern.

Täusche ich mich jetzt, oder gilt 16^2=256 > (echt größer) 2^4=16 ?

Eine Hexadezimalstelle entspricht doch 4 Byte?

(Btw. Hexspeak ? Wikipedia )

[OT]Thanks For The 0xB16B00B5 :D[/OT]
 
Zuletzt bearbeitet von einem Moderator:
S

SlaterB

Gast
wieviel Ungenauigkeiten willst du noch in dein Posting packen?
was verstehst du unter einer 'Hexadezimalstelle'? ein gesammtest Konstrukt 0xAB?
sind "2^4=16", also 4 Bit, bei dir 1 Byte?

und "16^2=256", also 8 Bit, dann 4 Bytes, statt vermeintlich nur das Doppelte, 2 Byte?

man man man

"16^2=256" = EIN BYTE


---------

eher ist eine 'Hexadezimalstelle' wohl nur die Hälfte, ein Wert von 0-F, aber wieso 4 Bytes, 4 Bits doch nur
 
Zuletzt bearbeitet von einem Moderator:
H

hüteüberhüte

Gast
Wen meinst du denn jetzt? Mich? Habe Byte und Bit verwechselt. Gemeint waren Bit. Was gibt es an einer Hexadezimalstelle nicht zu verstehen (0 bis F)? Das steht genauso in Wikipedia.

Die Rechnung stimmt aber: 16^2=256 und 2^4=16. Ich dachte, er wollte 2 Hexstellen in 4 Bit packen. War nur ein Missverständnis. War auch schon spät. Kein Grund, gleich an die Decke zu gehen...

Schöne Grüße

(Thema ja nun auch schon beendet)
 

Bleiglanz

Gesperrter Benutzer
Man muss wohl mit Short arbeiten...
Java:
	public static byte[] parse(String s){
		Matcher m = Pattern.compile("0x[a-fA-F0-9]{2}").matcher(s);
		List<Short> resultList = new ArrayList<Short>();
		while(m.find()){
			resultList.add(Short.decode(m.toMatchResult().group()));
		}
		byte[] result = new byte[resultList.size()];
		for(int i=0; i<result.length ; i++){ 
		    result[i] = resultList.get(i).byteValue();
		}
		return result;
	}}
 
S

SlaterB

Gast
erstes Posting seit von vor dem Sommermärchen und dann in diesem schon abgeschlossenen Thema? ;)
willkommen zurück

----
@hüteüberhüte
okok
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Von byte[] nach String zurueck nach byte[]. Arrays sind nicht identisch :( Java Basics - Anfänger-Themen 6
B String nach byte[] Java Basics - Anfänger-Themen 17
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
I String nach Wort suchen Java Basics - Anfänger-Themen 6
P Ein Objekt nach einem String durchsuchen? Java Basics - Anfänger-Themen 7
F JMenuItem Kann nicht nach einem String benannt werden... Java Basics - Anfänger-Themen 11
B String nach erstem Leerzeichen trennen Java Basics - Anfänger-Themen 7
G String wird nach Einlesen aus Datei nicht erkannt Java Basics - Anfänger-Themen 3
O String von vorne nach hinten an einem Zeichen Java Basics - Anfänger-Themen 10
B String nach HTML formatieren Java Basics - Anfänger-Themen 9
K String nach bestimmtem Muster parsen Java Basics - Anfänger-Themen 3
M Array nach String durchsuchen und zurückgeben Java Basics - Anfänger-Themen 16
S String trennen nach beliebigen Zeichen Java Basics - Anfänger-Themen 3
B String: suche nach Wörter und in List<String> speichern Java Basics - Anfänger-Themen 3
G String nach Contains/Regex Java Basics - Anfänger-Themen 2
F Wort nach String ausgeben Java Basics - Anfänger-Themen 5
MiMa String nach float Konvertieren Java Basics - Anfänger-Themen 23
P Input/Output Arraylist nach String eines Objekts durchsuchen Java Basics - Anfänger-Themen 26
F String immer weiter nach Bedarf vergrößern Java Basics - Anfänger-Themen 3
W Array nach String durchsuchen und Ausgeben Java Basics - Anfänger-Themen 8
G Variabel: Nach String benannte Methode ausführen Java Basics - Anfänger-Themen 13
S String nach Größe sortieren Java Basics - Anfänger-Themen 6
F In einem String nach einem String suchen und Zeichen danach ausgeben Java Basics - Anfänger-Themen 6
M String nach Zahlen durchsuchen Java Basics - Anfänger-Themen 21
B String nach regex überprüfen Java Basics - Anfänger-Themen 6
C String Objekte Vergleich je nach Instanzierung unterschiedlich!!?!! Java Basics - Anfänger-Themen 4
H binärer String nach int convertieren Java Basics - Anfänger-Themen 3
L Methoden String.split nach Absätzen? Java Basics - Anfänger-Themen 8
K Klassen String - nach Wort durchsuchen Java Basics - Anfänger-Themen 6
K Int nach String geht nicht Oo Java Basics - Anfänger-Themen 13
D Nach String "{" suchen Java Basics - Anfänger-Themen 4
S String nach Ausdruck durchsuchen und Folgeattribut ausgeben Java Basics - Anfänger-Themen 3
C String array nach File array Java Basics - Anfänger-Themen 15
D Wort nach Leerzeichen - String Java Basics - Anfänger-Themen 10
R Datentypen In String nach String suchen und hinzufügen Java Basics - Anfänger-Themen 2
C Datentypen int[][]-Array nach String[][]-Array konvertieren Java Basics - Anfänger-Themen 7
K StringWriter/String nach InputStream konvertieren Java Basics - Anfänger-Themen 3
L String zuverlässig nach Char parsen? Java Basics - Anfänger-Themen 4
B String Array nach Int Array Java Basics - Anfänger-Themen 3
A String nach bestimmten kriterien splitten Java Basics - Anfänger-Themen 13
E String abscheiden nach letztem Backslash Java Basics - Anfänger-Themen 3
S String nach erstem Whitespace kopieren Java Basics - Anfänger-Themen 3
H String/StringBuffer nach zeilen aufteilen Java Basics - Anfänger-Themen 2
D String nach ABC sortieren Java Basics - Anfänger-Themen 2
B String vom Server nach Position... (erledigt) Java Basics - Anfänger-Themen 6
G String nach int casten Java Basics - Anfänger-Themen 5
I Unstimmigkeit bei String-nach-Double-Konvertierung Java Basics - Anfänger-Themen 7
S Worthäufigkeiten zählen nach String.split() Java Basics - Anfänger-Themen 5
D String mit 2 Stellen nach dem Komma (Dezimalzahl) Java Basics - Anfänger-Themen 9
M Int nach String konvertieren? Java Basics - Anfänger-Themen 11
G String nach Pluszeichen splitten Java Basics - Anfänger-Themen 2
R string nach int[] Java Basics - Anfänger-Themen 4
A String Array: Suche nach Name -> Wert? Java Basics - Anfänger-Themen 3
B nach Zeichen suchen dass im string mehrmals vorkommt Java Basics - Anfänger-Themen 3
S Arrays nach String kovertieren und sortieren Java Basics - Anfänger-Themen 4
M String nach einer bestimmten Anzahl von Zeichen trennen Java Basics - Anfänger-Themen 2
H Von String nach Date Java Basics - Anfänger-Themen 2
G String Sortierung nach mehreren Kriterien Java Basics - Anfänger-Themen 4
S String nach Marke im String finden. Java Basics - Anfänger-Themen 7
J nach Muster in String suchen Java Basics - Anfänger-Themen 4
H Konvertieren von String nach int Java Basics - Anfänger-Themen 9
S String nach boolean parsen! Java Basics - Anfänger-Themen 5
M long nach String casten Java Basics - Anfänger-Themen 2
U String nach Integer Casten. Java Basics - Anfänger-Themen 4
N String nach Zeichen ersetzen Java Basics - Anfänger-Themen 6
R String nach Binär-Form Java Basics - Anfänger-Themen 3
K int nach String umwandeln mit führenden Nullen Java Basics - Anfänger-Themen 4
G String: nach 3. Zeichen char ersetzen Java Basics - Anfänger-Themen 3
D Von String nach boolean umwandeln Java Basics - Anfänger-Themen 8
H Object nach String umwandeln Java Basics - Anfänger-Themen 2
B Typumwandlung von int nach String Java Basics - Anfänger-Themen 8
R in einem string nach einer zahl suchen und auslesen...... Java Basics - Anfänger-Themen 3
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2
K String analysieren Java Basics - Anfänger-Themen 27
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
String in ArrayList umwandeln Java Basics - Anfänger-Themen 1
I Sass Compiler und String erhalten? Java Basics - Anfänger-Themen 7
Avalon String in Double bzw. Währung konvertieren Java Basics - Anfänger-Themen 6
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
F Arraylist<String>Ein Wort pro Zeile Java Basics - Anfänger-Themen 6
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
E String zerlegen aus args Java Basics - Anfänger-Themen 1
M Long-Typ in String-Änderung führt zu keinem Ergebnis bei großer Zahl Java Basics - Anfänger-Themen 11
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
J String Filter Java Basics - Anfänger-Themen 5
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben