package innovimax.mixthem.io;

import innovimax.mixthem.interfaces.IInputChar;

import java.io.File;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

/*
    Created by innovimax
    Default implementation of IInputChar
*/
public class DefaultCharReader implements IInputChar {

	private final BufferedReader reader;	

	public DefaultCharReader(File input) throws IOException {		
		this.reader = new BufferedReader(new FileReader(input));
	}

	@Override
	public boolean hasCharacter() throws IOException {
		return this.reader.ready();
	}

	@Override
	public int nextCharacter() throws IOException {
		return this.reader.read();		
	}

	@Override
	public int nextCharacters(char[] buffer, int len) throws IOException {
		return this.reader.read(buffer, 0, len);		
	}

	@Override
	public void close() throws IOException {
		this.reader.close();
	}

}

@@ -187,173 +187,408 @@
 %0A%0A/*
-%0A    Created by innovimax%0A    Default implementation of IInputChar%0A*/%0Apublic class DefaultCharReader implements IInputChar %7B%0A%0A%09private final BufferedReader reader;%09%0A
+*%0A* %3Cp%3EReads characters from a character-input file.%3C/p%3E%0A* %3Cp%3EThis is the default implementation of IInputChar.%3C/p%3E%0A* @see IInputChar%0A* @author Innovimax%0A* @version 1.0%0A*/%0Apublic class DefaultCharReader implements IInputChar %7B%0A%0A%09private final BufferedReader reader;%09%0A%0A%09/**%0A %09* Creates a character reader.%0A %09* @param file The input file to be read%0A %09* @throws IOException - If an I/O error occurs%0A %09*/
 %0A%09pu

Update DefaultCharReader.java