Exemplo n.º 1
0
        /// <summary>
        /// Lee una cadena de caracteres de un archivo de texto
        /// </summary>
        /// <param name="nombreArchivo"></param>
        /// <param name="datos"></param>
        /// <returns></returns>
        public Fabrica LeerTexto()
        {
            string                   ruta      = Directory.GetCurrentDirectory() + @"\Computadoras.txt";
            List <string>            productos = new List <string>();
            Fabrica                  fabrica   = GetFabrica(this.AlmacenDeProductos);
            ArchivosTexto <Producto> texto     = new ArchivosTexto <Producto>();

            texto.Leer(ruta, out productos);
            foreach (string producto in productos.ToArray())
            {
                string[] campos = producto.Split(',');
                if (campos[0] == "Computadora")
                {
                    Computadora.TipoComputadora   tipo;
                    Computadora.ESistemaOperativo eSistema;
                    bool pasoControlCalidad;
                    if (campos[5] == "Escritorio")
                    {
                        tipo = Computadora.TipoComputadora.Escritorio;
                    }
                    else
                    {
                        tipo = Computadora.TipoComputadora.Notebook;
                    }
                    if (campos[4] == "Pasó control de calidad")
                    {
                        pasoControlCalidad = true;
                    }
                    else
                    {
                        pasoControlCalidad = false;
                    }
                    switch (campos[6])
                    {
                    case "Windows":
                        eSistema = Computadora.ESistemaOperativo.Windows;
                        break;

                    case "OSX":
                        eSistema = Computadora.ESistemaOperativo.OSX;
                        break;

                    case "Linux":
                        eSistema = Computadora.ESistemaOperativo.Linux;
                        break;

                    default:
                        eSistema = Computadora.ESistemaOperativo.SinSistemaOperativo;
                        break;
                    }
                    double precio = double.Parse(campos[3].Remove(0, 1), CultureInfo.InvariantCulture);
                    //Para que tome el punto como una coma
                    Computadora computadora = new Computadora(int.Parse(campos[1]), campos[2], precio,
                                                              tipo, eSistema, pasoControlCalidad);
                    fabrica.Productos.Add(computadora);
                }
            }
            return(fabrica);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Lee una cadena de caracteres de un archivo de texto
        /// </summary>
        /// <param name="nombreArchivo"></param>
        /// <param name="datos"></param>
        /// <returns></returns>
        public Fabrica LeerTexto()
        {
            string                   ruta      = Directory.GetCurrentDirectory() + @"\Computadoras.txt";
            List <string>            productos = new List <string>();
            Fabrica                  fabrica   = GetFabrica(this.AlmacenDeProductos);
            ArchivosTexto <Producto> texto     = new ArchivosTexto <Producto>();

            texto.Leer(ruta, out productos);
            foreach (string producto in productos.ToArray())
            {
                string[] campos = producto.Split(',');
                if (campos[0] == "Computadora")
                {
                    Computadora.TipoComputadora   tipo;
                    Computadora.ESistemaOperativo eSistema;
                    if (campos[5] == "0")
                    {
                        tipo = Computadora.TipoComputadora.Escritorio;
                    }
                    else
                    {
                        tipo = Computadora.TipoComputadora.Notebook;
                    }
                    switch (campos[6])
                    {
                    case "0":
                        eSistema = Computadora.ESistemaOperativo.Windows;
                        break;

                    case "1":
                        eSistema = Computadora.ESistemaOperativo.OSX;
                        break;

                    case "2":
                        eSistema = Computadora.ESistemaOperativo.Linux;
                        break;

                    default:
                        eSistema = Computadora.ESistemaOperativo.SinSistemaOperativo;
                        break;
                    }
                    Computadora computadora = new Computadora(int.Parse(campos[1]), campos[2], double.Parse(campos[3]),
                                                              tipo, eSistema, bool.Parse(campos[4]));
                    fabrica.Productos.Add(computadora);
                }
            }
            return(fabrica);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Implementacion que guarda en formato de texto la lista de productos, dejando su informacion guardada en writer
        /// </summary>
        /// <param name="info">La lista a convertir a texto </param>
        public void Guardar()
        {
            List <Computadora> computadoras = new List <Computadora>();

            foreach (Producto p in this.Productos)
            {
                if (p is Computadora)
                {
                    computadoras.Add((Computadora)p);
                }
            }
            string ruta = Directory.GetCurrentDirectory() + @"\Computadoras.txt";
            ArchivosTexto <Computadora> texto = new ArchivosTexto <Computadora>();

            texto.Guardar(ruta, computadoras);
        }