public int GetMemoriaData(String key)
        {
            int         index = int.Parse(key);
            MemoriaData data  = db[index];

            return(data.Resultado);
        }
        public void LeerMemoria()
        {
            ConsoleColor currentColor = Console.BackgroundColor;
            string       archivoDB    = "../../../db.json";
            StreamReader reader       = new StreamReader(archivoDB);
            var          dbJSON       = reader.ReadToEnd();
            var          dbObject     = JObject.Parse(dbJSON);
            int          i            = 0;

            foreach (var item in dbObject)
            {
                MemoriaData memoriaData = new MemoriaData(item.Key.ToString(), item.Value["operacion"].ToString(), item.Value["resultado"].ToString());
                this.db.Add(memoriaData);
                Console.WriteLine("Dato en memoria: ({0})", i);
                Console.BackgroundColor = ConsoleColor.Green;
                Console.WriteLine("{0} - {1}", memoriaData.fecha.ToLongDateString(),
                                  memoriaData.fecha.ToLongTimeString());
                Console.ResetColor();
                Console.WriteLine("Operación: {0}", memoriaData.operacion);
                Console.WriteLine("Resultado: {0}", memoriaData.Resultado.ToString());
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("----------------- \n");
                Console.ForegroundColor = ConsoleColor.White;
                i++;
            }
        }
        public int GetMemoriaData(String key)
        {
            // Encontrar el dato deseado con indice manual en el parseo del json.
            int index = int.Parse(key);
            // Opción Nativa:  para buscar de manera nativa en nuestro List db. con el indice autogenerado.
            // En tres lineas de código encontramos y reutilizamos el valor que se busca.
            MemoriaData data = db[index];

            return(data.resultado);
        }
        public void leerMemoria()
        {
            string       arcivoDB = "../../../db.json";
            StreamReader reader   = new StreamReader(arcivoDB);
            var          dbJSON   = reader.ReadToEnd();
            JObject      dbObject = JObject.Parse(dbJSON);

            //Prueba de lectura de archivo db json
            //var result = dbObject.ToString();
            //var result = dbObject["arreglo"].ToString();
            //lectura iterable de archivo db json
            foreach (var item in dbObject)
            {
                Console.WriteLine("dato en memoria");
                MemoriaData memoriaData = new MemoriaData(DateTime.Now, item["operacion"].ToString(), (int)item["resultado"]);
                //Console.WriteLine(key.ToString());
                Console.WriteLine(memoriaData.resultado.ToString());
            }
        }
Beispiel #5
0
        public int GetMemoriaData(String key)
        {
            // Encontrar el dato deseado con indice manual en el parseo del json.
            int index = int.Parse(key);
            // Opción Nativa:  para buscar de manera nativa en nuestro List db. Con el indice autogenerado.
            // En tres lineas de código encontramos y reutilizamos el valor que se busca.
            MemoriaData data = db[index];

            // Opción para buscar por medio de indice manual:
            // MemoriaData data = db.Find(item => item.key == index); // Damos un indice para que lo busque y al encontrarlo nos regresa el objeto deseado.
            // Encontrar el dato deseado por la fecha. Accedemos al json nuevamente y buscamos por fecha.
            // Ya que esta operación no asigna nuevos indices, respeta la estructura acutal.
            // string archivoDB = "../../../db.json";
            // StreamReader reader = new StreamReader(archivoDB);
            // var dbJSON = reader.ReadToEnd();
            // JObject dbObject = JObject.Parse(dbJSON);
            // JToken data = (dbObject as JObject)[key];
            // return (int)data["resultado"];
            return(data.resultado);
        }
        public void GuardarMemoria(MemoriaData data)
        {
            db.Add(data);
            int i = 0;

            db.ForEach((MemoriaData memoriaData) =>
            {
                Console.WriteLine("Dato en memoria: ({0})", i);
                Console.WriteLine("{0} - {1}", memoriaData.fecha.ToLongDateString(),
                                  memoriaData.fecha.ToLongTimeString());
                Console.WriteLine("Operación: {0}", memoriaData.operacion);
                Console.WriteLine("Resultado: {0}", memoriaData.resultado.ToString());
                Console.WriteLine("----------------- \n");
                i++;
            });
            string json      = JsonConvert.SerializeObject(db.ToArray(), Formatting.Indented);
            string archivoDB = "../../../db.json";

            File.WriteAllText(archivoDB, json);
        }
Beispiel #7
0
        public void LeerMemoria()
        {
            string archivoD8 = "../../../db.json";
            StreamReader reader = new StreamReader(archivoD8);
            var dbJSON = reader.ReadToEnd();
            var dbObject = JObject.Parse(dbJSON);
            //Prueba de lectura de archivo de.json
            //var result = dbObject,ToString()
            //var result = dbObject["arreglo"].ToString();
            //var result = dbObject["arreglo"][0].ToString();
            //Lectura de json iterable
            foreach (var key, var item) in dbObject)
            {
                //Iteracion individual de cada grupo de datos del objeto json.
                Console.WriteLine("Dato en memoria:");
                MemoriaData memoriaData = new MemoriaData(DateTime.Now, item["operacion"].ToString(), (int)item["resultado"]);
                Console.WriteLine(Key.ToString());
                Console.WriteLine(memoriaData.resultado.ToString());
            }

        }
Beispiel #8
0
        //static void Main(string[] args)
        static void Calcu()
        {
            Memoria memoria = new Memoria();

            Console.WriteLine("CalculApp");
            Console.WriteLine("----------------- \n");
            bool close_app = true;
            int  valor1    = 0;
            int  valor2    = 0;
            int  result    = 0;

            while (close_app)
            {
                Console.WriteLine("Elige una opción:");
                Console.WriteLine("Presiona (+) Suma");
                Console.WriteLine("Presiona (-) Resta");
                Console.WriteLine("Presiona (*) Multiplicación");
                Console.WriteLine("Presiona (/) Disión");
                Console.WriteLine("Presiona (m) Memoria");
                Console.WriteLine("Presiona (mr) Borrar Memoria");
                Console.WriteLine("Presiona (e) Para salir \n");
                string opcion = Console.ReadLine();
                switch (opcion)
                {
                case "+":
                    Console.WriteLine("Suma \n");
                    Console.WriteLine("Captura el primer valor:");
                    valor1 = result == 0 ? int.Parse(Console.ReadLine()) : result;
                    Console.WriteLine("Captura el segundo valor:");
                    valor2 = int.Parse(Console.ReadLine());
                    result = Calculus.suma(valor1, valor2);
                    Console.WriteLine("Tu resultado es: {0} \n", result);
                    String      o    = valor1 + "+" + valor2;
                    MemoriaData data = new MemoriaData(DateTime.Now.ToString(), o, result.ToString());
                    memoria.GuardarMemoria(data);
                    result = 0;
                    break;

                case "-":
                    Console.WriteLine("Resta \n");
                    Console.WriteLine("Captura el primer valor:");
                    valor1 = result == 0 ? int.Parse(Console.ReadLine()) : result;
                    Console.WriteLine("Captura el segundo valor:");
                    valor2 = int.Parse(Console.ReadLine());
                    result = Calculus.resta(valor1, valor2);
                    Console.WriteLine("Tu resultado es: {0} \n", result);
                    result = 0;

                    break;

                case "*":
                    Console.WriteLine("Multiplicación \n");
                    Console.WriteLine("Captura el primer valor:");
                    valor1 = result == 0 ? int.Parse(Console.ReadLine()) : result;
                    Console.WriteLine("Captura el segundo valor:");
                    valor2 = int.Parse(Console.ReadLine());
                    result = Calculus.multi(valor1, valor2);
                    Console.WriteLine("Tu resultado es: {0} \n", result);
                    result = 0;

                    break;

                case "/":
                    Console.WriteLine("División \n");
                    Console.WriteLine("Captura el primer valor:");
                    valor1 = result == 0 ? int.Parse(Console.ReadLine()) : result;
                    Console.WriteLine("Captura el segundo valor:");
                    valor2 = int.Parse(Console.ReadLine());
                    result = Calculus.division(valor1, valor2);
                    Console.WriteLine("Tu resultado es: {0} \n", result);
                    result = 0;

                    break;

                case "m":
                    Console.WriteLine("Accediendo a Memoria \n");
                    Console.WriteLine("-----------------\n");
                    //memoria.multidimensional();
                    String key = Console.ReadLine();
                    //Console.WriteLine(data.ToString());
                    // Elegir la opcion de resultado en nuestra memoria
                    // y reutilizarla en alguna operación.
                    // 1. Crear metodo que nos regrese el resultado seleccionado.
                    result = memoria.GetMemoriaData(key);
                    // 2. Utilizar el resultado en una nueva operación.
                    Console.WriteLine(result);
                    // 3. Guardar la nueva operación en nuestra db.json.
                    // memoria.GuardarMemoria();
                    break;

                case "mr":
                    Console.WriteLine("Memoria Temporal Reiniciada! \n");
                    result = 0;
                    break;

                case "e":
                    Console.WriteLine("-----------------\n");
                    Console.WriteLine("Cerrando CalculApp! \n");
                    close_app = false;
                    break;

                default:
                    Console.WriteLine("Opción desconocida: {0}, intenta de nuevo \n", opcion);
                    break;
                }
            }
        }