Hiho,Kopieren eines Streams über Byte []
Ich muss einen Eingabestream kopieren. Und nach ein bisschen Suchen im Netz habe ich das mit Hilfe eines Bytearrays versucht. Mein Code sieht wie folgt aus ("ist" die Input):
ByteArrayOutputStream bos = new ByteArrayOutputStream();
while (is.read() != -1) {
bos.write(is.read());
}
byte[] ba = bos.toByteArray();
InputStream test = new ByteArrayInputStream(ba);
InputStream test2 = new ByteArrayInputStream(ba);
Und es funktioniert .. fast
Sowohl in der Strom, das Programm nur jedes zweite Zeichen kopiert So "DOR A =" 104 "/>" im "is" -Stream wird: "O = 14 /" in den anderen Streams
Was ist das Problem? Ich kann nicht verstehen, was vorgeht.
Hoffnung jemand könnte mir die Lösung :)
Grüße
Vielen Dank! Ich verstehe, was das Problem war :) (weil ich die Lese-Methode zweimal verwendet es zweimal springt) – Graslandpinguin
Es ist nicht korrekt. Es kompiliert nicht. Sie können eine Variable nicht innerhalb einer while-Bedingung deklarieren. – EJP
@EJP: Warum haben Sie dann Ihre Korrektur rückgängig gemacht (und wahrscheinlich stattdessen einen Downvote gewählt)? – musiKk