Hiho,
мне нужно скопировать входной поток. И после небольшого поиска в сети я попробовал это с помощью байтового массива. Мой код выглядит так ("is" - это входной поток):
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);
И он работает .. почти
В обоих потоках программа копировала только каждый второй символ Я пробовал это с помощью байтового массива. Мой код выглядит так («is» - это входной поток): ByteArrayOutputStream ...
Hiho,
мне нужно скопировать входной поток. И после небольшого поиска в сети я попробовал это с помощью байтового массива. Мой код выглядит так ("is" - это входной поток):
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);
И он работает .. почти
В обоих потоках программа копировала только каждый второй символ Я пробовал это с помощью байтового массива. Мой код выглядит так («is» - это входной поток): ByteArrayOutputStream ...
Hiho,
мне нужно скопировать входной поток. И после небольшого поиска в сети я попробовал это с помощью байтового массива. Мой код выглядит так ("is" - это входной поток):
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);
И он работает .. почти
В обоих потоках программа копировала только каждый второй символ Таким образом, "DOR A =" 104 "/>" в потоке "is" становится: «O = 14 /» в других потоках
В чем проблема? я не могу понять, что происходит.
Надеюсь, кто-нибудь может дать мне решение :)
привет