File Input Output Java

import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
import java.io.IOException;
class BufferedInputStreamDemo {
  public static void main(String args[]) throws IOException {
    String s = "This is a © copyright symbol " + "but this is © not.\n";
    byte buf[] = s.getBytes();
    ByteArrayInputStream in = new ByteArrayInputStream(buf);
    BufferedInputStream f = new BufferedInputStream(in);
    int c;
    boolean marked = false;
    while ((c = f.read()) != -1) {
      switch (c) {
      case '&':
        if (!marked) {
          f.mark(32);
          marked = true;
        } else {
          marked = false;
        }
        break;
      case ';':
        if (marked) {
          marked = false;
          System.out.print("(c)");
        } else
          System.out.print((char) c);
        break;
      case ' ':
        if (marked) {
          marked = false;
          f.reset();
          System.out.print("&");
        } else
          System.out.print((char) c);
        break;
      default:
        if (!marked)
          System.out.print((char) c);
        break;
      }
    }
  }
}