У меня есть кусок испытательного оборудования, из которого я могу прочитать данные с использованием InputStream
, который вкрапляет байты и символы (организованные в линию), например:Java: пересыпая байты и символы
TEST1
TEST2
500
{500 binary bytes follows here}
TEST3
TEST4
600
{600 binary bytes follows here}
Я бы например, использовать BufferedReader, чтобы я мог читать строку за раз, но затем переключитесь на InputStream, чтобы я мог читать двоичные байты. Но это, похоже, не работает и не кажется хорошей идеей.
Как я могу это сделать? Я не могу получить байты из BufferedReader, и если я использую BufferedReader поверх InputStream, похоже, что BufferedReader «владеет» InputStream.
Редактировать: альтернатива, просто используя InputStream всюду и вынуждая преобразовывать байты-> символы и искать новые строки, похоже, что это определенно будет работать, но также будет настоящей болью.
Какая кодировка кодируется в тексте? – McDowell
Я не совсем уверен. Это похоже на ASCII, но я не знаю, имеет ли он возможность содержать другие вещи. –
Это IEEE 488.2, но опять же, я не уверен, что это гарантировано ASCII. –