Нет простых способов сделать это, потому что InputStream
имеет интерфейс в стиле pull, когда OutputStream
имеет интерфейс в стиле push. Вам нужен какой-то насосный контур, чтобы извлечь данные из InputStream
и вставить их в OutputStream
. Примерно так (при необходимости запустите его в отдельном потоке):
int size = 0;
byte[] buffer = new byte[1024];
while ((size = in.read(buffer)) != -1) out.write(buffer, 0, size);
Это уже реализовано в Apache Commons IO как IOUtils.copy()