code: public static String readFileBufferedAsString(final String filename) throws IOException {
  		FileReader in = null;
  		try {
  			StringBuilder result = new StringBuilder();
  			char[] buffer = new char[2048];
  			in = new FileReader(filename);
  			int len = 0;
  			do {
  				len = in.read(buffer);
  				if (len > 0)
  					result.append(buffer, 0, len);
  			} while (len > 0);
  			return result.toString();
  		} finally {
  			closeIgnoringException(in);
  		}
  	}
docs: Instead of reading the file at once, reads the file by reading 2K blocks. Useful for reading special files, where the size of the file isn't
  determinable, for example /proc/xxx files on linux.
  
  @param filename a {@link java.lang.String} object.
  @return file content.
  @throws java.io.IOException if any.