@@ -0,0 +1,986 @@
+package innovimax.mixthem.operation;%0A%0Aimport innovimax.mixthem.io.DefaultCharReader;%0Aimport innovimax.mixthem.io.DefaultCharWriter;%0Aimport innovimax.mixthem.io.IInputChar;%0Aimport innovimax.mixthem.io.IOutputChar;%0Aimport innovimax.mixthem.io.InputResource;%0A%0Aimport java.io.IOException;%0Aimport java.io.OutputStream;%0A%0A/**%0A* %3Cp%3ECopy all characters.%3C/p%3E%0A* @author Innovimax%0A* @version 1.0%0A*/%0Apublic class CharCopy implements ICopy %7B%0A%0A    private final static int CHAR_BUFFER_SIZE = 1024;%0A    %0A    public void processFile(InputResource input, OutputStream out) throws IOException    %0A        char%5B%5D buffer = new char%5BCHAR_BUFFER_SIZE%5D;%0A        IInputChar reader = new DefaultCharReader(input);%0A        IOutputChar writer = new DefaultCharWriter(out);%0A        while (reader.hasCharacter()) %7B%0A            final int len = reader.nextCharacters(buffer, CHAR_BUFFER_SIZE);%0A            writer.writeCharacters(buffer, len);%0A        %7D%0A        reader.close();%0A        writer.close();%0A    %7D    %0A    %0A%7D%0A

Create CharCopy.java