# File htree/encoder.rb, line 251
    def finish
      if @ic.respond_to? :finish
        external_str = @ic.finish
      else
        external_str = @ic.close
      end
      @buf << external_str
      @subcharset_ic.reject! {|subcharset, ic|
        if ic.respond_to? :finish
          begin
            ic.finish != external_str
          rescue Encoding::UndefinedConversionError, Encoding::InvalidByteSequenceError
            true
          end
        else
          begin
            ic.close != external_str
          rescue Iconv::Failure
            true
          end
        end
      }
      @buf
    end