Я добавляю отдельный ответ, поскольку внезапно понял, что вопрос можно интерпретировать иначе: я думаю, что ОП хочет преобразовать поток байтов, представляющих внутренний формат символов в определенном наборе символов, в соответствующие символы. Например, преобразование кодов ASCII в символы ASCII.
Это не полный ответ, но, надеюсь, поставит ОП на правильный путь, если я правильно понял. В качестве примера я использую utf-8:
BufferedInputStream istream = new BufferedInputStream(urlc.getInputStream() );
int numBytesAvailable = istream.available();
byte[] buffer = new byte[numBytesAvailable];
istream.read(buffer);
ByteBuffer tempBuffer = ByteBuffer.wrap(buffer);
Charset utf8Chars = Charset.forName("UTF-8");
CharBuffer chars = utf8Chars.decode(tempBuffer);
Теперь у вас есть буфер символов, поскольку Java их видит (вы можете использовать chars.array (), чтобы получить из него char []), чтобы они могли быть напечатаны в виде строки.
ПРЕДУПРЕЖДЕНИЕ. Перед тем, как приступить к декодированию, вам потребуется поместить весь поток в байтовый буфер; декодирование буфера, когда вы не знаете правильный конец внутренней последовательности байтов символа, приведет к повреждению символов!