}// ImprimirArchivoComprimido

        /// <summary>
        /// Metodo que permite imprimir un directorio
        /// </summary>
        /// <param name="directorio">directorio a imprimir</param>
        /// <returns>String conteniendo la impresion del directorio</returns>
        public override string ImprimirDirectorio(Directorio directorio)
        {
            String str = "d " + directorio.Nombre + "\n";

            str = ImprimirElementos(directorio, str);

            return(Estrategia.ReemplazoString(str));
        }// ImprimirDirectorio
        }// ImprimirArchivo

        /// <summary>
        /// Metodo que permite imprimir un archivo comprimido
        /// </summary>
        /// <param name="archivoComprimido">archivo comprimido a imprimir</param>
        /// <returns>String conteniendo la impresion del archivo comprimido</returns>
        public override string ImprimirArchivoComprimido(ArchivoComprimido archivoComprimido)
        {
            String str = "c " + archivoComprimido.Nombre + "\n";

            str = ImprimirElementos(archivoComprimido, str);

            return(Estrategia.ReemplazoString(str));
        }// ImprimirArchivoComprimido
        }// ImprimirArchivoComprimido

        /// <summary>
        /// Metodo que permite imprimir un directorio
        /// </summary>
        /// <param name="directorio">directorio a imprimir</param>
        /// <returns>String conteniendo la impresion del directorio</returns>
        public override string ImprimirDirectorio(Directorio directorio)
        {
            String str = "d " + directorio.Nombre + "\n";

            nivelAnidamiento++;

            foreach (IElementoSistema e in directorio.ObtenerElementos())
            {
                str = str + AnhadirTabuladores(nivelAnidamiento) + e.Accept(this);
            }

            nivelAnidamiento--;

            return(Estrategia.ReemplazoString(str));
        }// ImprimirDirectorio
        }// ImprimirDirectorio

        /// <summary>
        /// Metodo que permite imprimir un enlace directo
        /// </summary>
        /// <param name="enlace">enlace directo a imprimir</param>
        /// <returns>String conteniendo la impresion del enlace directo</returns>
        public override string ImprimirEnlace(EnlaceDir enlace)
        {
            return(Estrategia.ReemplazoString("e " + enlace.Nombre + "\n"));
        }// ImprimirEnlace
 /// <summary>
 /// Metodo que permite imprimir un archivo
 /// </summary>
 /// <param name="archivo">archivo a imprimir</param>
 /// <returns>String conteniendo la impresion del archivo</returns>
 public override string ImprimirArchivo(Archivo archivo)
 {
     return(Estrategia.ReemplazoString("f " + archivo.Nombre + "\n"));
 }// ImprimirArchivo