Hallo zusammen,
leider bin ich auf der Suche nach einer für mich verständlichen (umfangreichen) Beschreibung der Klasse ByteBuffer verzweifelt. Beim Experimentieren dann (trial & error), bin ich auf unlösbare Probleme gestoßen, die entweder Anfängerfehler oder Verständnisprobleme sind, bei denen Ihr mir bestimmt mit müdem Lächeln weiterhelfen könnt.
Mein Gedanke:
Ich lese eine Datei in ein byte-Array zu 50 Zeilen mit jeweils 20 Zeichen (fest). Nun habe ich als Ergebnis ein zweidimensionales Array. Das funktioniert auch soweit.
Nun ist aber das Arbeiten mit diesem Array sehr umständlich, was mich auf die Klasse ByteBuffer brachte, da man mit ihr je nach Belieben den Inhalt des Arrays interpretieren und bearbeiten kann.
Und jetzt meine Probleme:
Ich bräuchte dann ja ein ByteBuffer-Array für die 50 Zeilen mit einer Länge von jeweils 20. Ich kriege es aber nicht hin, dies zu initialisieren. Meinem Verständnis nach müsste das ja so, oder so ähnlich gehen:
Oder gehen Arrays schon garnicht mit dem ByteBuffer?
Und brauche ich denn zwingend ein Byte-Array "darunter" bzw. als Zwischenschritt? Dann wäre es ja "nur" eine Ansicht der Datenmenge, was ja auch ok wäre. Nur warum gibt es dann noch die Views in ByteBuffer?
Ich hätte ja im Umkehrschluss gedacht, man lade eine Zeile in einen ByteBuffer (ohne Array) und nutze dann die Views, um sich den Inhalt mal als short, mal als char, mal als int anzeigen zu lassen. Und insbesondere interessiert mich die Möglichkeit, die ByteOrder einfach zu wechseln.
Liege ich da komplett falsch, oder hapert es nur an meiner Umsetzung? ???:L
Bin Euch für jede Erklärung, Tipp oder Link dankbar!
i.b.fan
leider bin ich auf der Suche nach einer für mich verständlichen (umfangreichen) Beschreibung der Klasse ByteBuffer verzweifelt. Beim Experimentieren dann (trial & error), bin ich auf unlösbare Probleme gestoßen, die entweder Anfängerfehler oder Verständnisprobleme sind, bei denen Ihr mir bestimmt mit müdem Lächeln weiterhelfen könnt.
Mein Gedanke:
Ich lese eine Datei in ein byte-Array zu 50 Zeilen mit jeweils 20 Zeichen (fest). Nun habe ich als Ergebnis ein zweidimensionales Array. Das funktioniert auch soweit.
Nun ist aber das Arbeiten mit diesem Array sehr umständlich, was mich auf die Klasse ByteBuffer brachte, da man mit ihr je nach Belieben den Inhalt des Arrays interpretieren und bearbeiten kann.
Und jetzt meine Probleme:
Ich bräuchte dann ja ein ByteBuffer-Array für die 50 Zeilen mit einer Länge von jeweils 20. Ich kriege es aber nicht hin, dies zu initialisieren. Meinem Verständnis nach müsste das ja so, oder so ähnlich gehen:
Java:
ByteBuffer[] byteBuf = new ByteBuffer[zeilenAnzahl].allocate(zeichenAnzahl);
Oder gehen Arrays schon garnicht mit dem ByteBuffer?
Und brauche ich denn zwingend ein Byte-Array "darunter" bzw. als Zwischenschritt? Dann wäre es ja "nur" eine Ansicht der Datenmenge, was ja auch ok wäre. Nur warum gibt es dann noch die Views in ByteBuffer?
Ich hätte ja im Umkehrschluss gedacht, man lade eine Zeile in einen ByteBuffer (ohne Array) und nutze dann die Views, um sich den Inhalt mal als short, mal als char, mal als int anzeigen zu lassen. Und insbesondere interessiert mich die Möglichkeit, die ByteOrder einfach zu wechseln.
Liege ich da komplett falsch, oder hapert es nur an meiner Umsetzung? ???:L
Bin Euch für jede Erklärung, Tipp oder Link dankbar!
i.b.fan