{"id":4230,"date":"2018-09-11T19:04:32","date_gmt":"2018-09-11T17:04:32","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=4230"},"modified":"2018-09-11T19:04:32","modified_gmt":"2018-09-11T17:04:32","slug":"bytearrayoutputstream-writebytes","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2018\/09\/bytearrayoutputstream-writebytes\/","title":{"rendered":"Mit ByteArrayOutputStream in ein Byte-Feld schreiben"},"content":{"rendered":"<p>Ein ByteArrayOutputStream ist ein OutputStream, der die geschriebenen Daten intern in einem byte-Array speichert. Die Gr\u00f6\u00dfe des Arrays vergr\u00f6\u00dfert sich dynamisch zu den geschriebenen Daten.<\/p>\n<p>class java.io.ByteArrayOutputStream<br \/>\nextends OutputStream<\/p>\n<ul>\n<li>ByteArrayOutputStream()<br \/>\nErzeugt ein neues OutputStream-Objekt, das die Daten in einem internen Byte-Array abbildet.<\/li>\n<li>ByteArrayOutputStream(intsize)<br \/>\nErzeugt ein ByteArrayOutputStream mit einer gew\u00fcnschten anf\u00e4nglichen Pufferkapazit\u00e4t.<\/li>\n<\/ul>\n<p>Als OutputStream erbt der ByteArrayOutputStream alle Methoden, die jedoch allesamt eine IOException ausl\u00f6sen. Bei einem Strom der in den Speicher schreibt kann das nicht passieren. Daher wurde in Java 11 eine neue Methode writeBytes(byte[]) eingef\u00fchrt, die keine IOException ausl\u00f6st.<\/p>\n<p>Mit die wichtigste Methode ist toByteArray(), die ein byte[] mit dem geschriebenen Inhalt liefert. reset() l\u00f6scht den internen Puffer. Eine praktische Methode ist writeTo(OutputStream out). Hinter ihr steckt ein out.write(buf, 0, count), das f\u00fcr uns in das nicht sichtbare interne Feld buf schreibt. Es gibt drei toString(\u2026)-Methoden, die das Byte-Array in einen String konvertieren: toString(String charsetName) und toString\u200b(Charset charset) \u2013 seit Java 10 \u2013 bekommen als Argument die Zeichenkodierung \u00fcbergeben und ByteArrayOutputStream \u00fcberschreibt toString() von der Oberklasse Object was die Standard Plattform-Zeichenkodierung nimmt.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein ByteArrayOutputStream ist ein OutputStream, der die geschriebenen Daten intern in einem byte-Array speichert. Die Gr\u00f6\u00dfe des Arrays vergr\u00f6\u00dfert sich dynamisch zu den geschriebenen Daten. class java.io.ByteArrayOutputStream extends OutputStream ByteArrayOutputStream() Erzeugt ein neues OutputStream-Objekt, das die Daten in einem internen Byte-Array abbildet. ByteArrayOutputStream(intsize) Erzeugt ein ByteArrayOutputStream mit einer gew\u00fcnschten anf\u00e4nglichen Pufferkapazit\u00e4t. Als OutputStream erbt der [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[11,107,108],"tags":[],"class_list":["post-4230","post","type-post","status-publish","format-standard","hentry","category-insel","category-java-10","category-java-11"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4230","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=4230"}],"version-history":[{"count":1,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4230\/revisions"}],"predecessor-version":[{"id":4231,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4230\/revisions\/4231"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=4230"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=4230"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=4230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}