public static String readAsciiLine(InputStream in) throws IOException {
  StringBuilder result=new StringBuilder(80);
  while (true) {
    int c=in.read();
    if (c == -1) {
      throw new EOFException();
    }
 else     if (c == '\n') {
      break;
    }
    result.append((char)c);
  }
  int length=result.length();
  if (length > 0 && result.charAt(length - 1) == '\r') {
    result.setLength(length - 1);
  }
  return result.toString();
}

public static String readAsciiLine ( InputStream in ) throws IOException { StringBuilder result = new StringBuilder ( 80 ) ; while ( true ) { int c = in . read ( ) ; if ( c == - 1 ) { throw new EOFException ( ) ; } else if ( c == '\n' ) { break ; } result . append ( ( char ) c ) ; } int length = result . length ( ) ; if ( length > 0 && result . charAt ( length - 1 ) == '\r' ) { result . setLength ( length - 1 ) ; } return result . toString ( ) ; }
returns the ascii characters up to but not including the next " \ r \ n " , or " \ n " .
