perfetto grazie, ho risolto utilizzando la lettura del buffer per carattere e fermando la lettura fino al carattere di fine da me scelto

codice:
final char endMarker = '}';
StringBuilder messageBuffer = new StringBuilder();
int value;
while ((value = in.read()) != -1) {
    char c = (char) value;
    if (c == endMarker) {
        inputLine= messageBuffer.toString();
        messageBuffer.setLength(0);
         //do something with inputLine
    else {
        messageBuffer.append(c);
    }
}