コード例 #1
0
        public string Save(string comentario)
        {
            DateTime fecha = DateTime.Now;
            //Tomamos el texto del archivo
            //string comentario;
            String textInTheFile = File.ReadAllText(Program.ubicacion);
            ListaVersiones <string> versiones = new ListaVersiones <string>();

            //Console.WriteLine("Nombre: ");
            //string nombreNodo = Console.ReadLine();

            //El nodo ha sido agregado
            if (!textInTheFile.Equals(infofile))
            {
                infofile   = textInTheFile;
                numeroNodo = numeroNodo + 1;
                listaString.Agregar(textInTheFile, comentario, fecha, numeroNodo);

                Console.WriteLine("\nNode Added ");

                //Creemos el archivo txt

                listaString.Actualizar(listaString);
                //versiones.Recorrer(versiones);
                //this.listaString = versiones;

                return(listaString.primero.data);
            }
            else
            {
                Console.WriteLine("no hubieron cambios en el archivo");
            }
            return("");
        }
コード例 #2
0
        }//fin del método

        public int Buscar(ListaVersiones <string> lista, int nNodo)
        {
            Program p  = new Program();
            bool    cr = false;

            int    nodoB       = 0;
            string datoBuscado = null;

            if (lista.primero != null)
            {
                nodoB        = lista.ultimo.numeroNodo;
                lista.actual = lista.primero;
                do
                {
                    if (lista.actual.numeroNodo == nNodo)
                    {
                        Program.lastVnodo = nNodo;
                        datoBuscado       = lista.actual.data;
                        try
                        {
                            writeFile(datoBuscado);
                            Console.WriteLine("se ha modificado correctamente");
                        }
                        catch (Exception e) { Console.WriteLine(e.Message); }
                        cr = true;
                    }
                    lista.actual = lista.actual.siguiente;
                }while (lista.actual != null);
            }
            if (!cr)
            {
                Console.WriteLine("nodo inexistente");
            }
            return(nodoB);
        }//fin del método
コード例 #3
0
 public void RecorrerInverso(ListaVersiones <T> lista)
 {
     if (lista.primero != null)
     {
         //Recoree para contar cuántos elementos hay
         int i = 0;
         lista.actual = lista.primero;
         do
         {
             i++;
             lista.actual = lista.actual.siguiente;
         } while (lista.actual != null);
         //Hacemos un array con los datos de la lista y el tamaño establecido y guardamos en ese array los datos de la lista
         string[]   coment = new string[i];
         DateTime[] fecha  = new DateTime[i];
         int[]      num    = new int[i];
         i            = 0;
         lista.actual = lista.primero;
         do
         {
             coment[i] = lista.actual.versionComentario;
             fecha[i]  = lista.actual.fechaHora;
             num[i]    = lista.actual.numeroNodo;
             i++;
             lista.actual = lista.actual.siguiente;
         } while (lista.actual != null);
         //Imprimimos lo que obtuvimos de mayor a menor
         while (i > 0)
         {
             i--;
             Console.WriteLine(num[i] + "\t     " + fecha[i].ToString("MM/dd/yyyy HH:mm") + "      " + coment[i]);
         }
     }
 }//fin del método
コード例 #4
0
        public string Save(string comentario)
        {
            if (0 == Directory.GetFiles(Program.ubicacion).Length)
            {
                Console.WriteLine("no tiene archivos");
            }
            else
            {
                FileSs();
                DateTime fecha                    = DateTime.Now;
                String   textInTheFile            = "";// File.ReadAllText(Program.ubicacion);
                ListaVersiones <string> versiones = new ListaVersiones <string>();

                //El nodo ha sido agregado
                if (!textInTheFile.Equals(lastS()))
                {
                    infofile          = textInTheFile;
                    numeroNodo        = numeroNodo + 1;
                    Program.lastVnodo = numeroNodo;
                    listaString.Agregar(" ", comentario, fecha, numeroNodo);
                    Console.WriteLine("\nNode Added ");
                    //Creemos el archivo txt
                    listaString.Actualizar(listaString);
                    //versiones.Recorrer(versiones);
                    //this.listaString = versiones;

                    return(listaString.primero.data);
                }
                else
                {
                    Console.WriteLine("no hubieron cambios en el archivo");
                }
            }
            return("");
        }
コード例 #5
0
        //c:\emusk begin c:\users\deleo\desktop\zero

        public void Delete(int datobuscar)
        {
            // Console.WriteLine("Cuál versión quieres eliminar?");
            //string nombreNodo = Console.ReadLine();
            this.listaString = this.listaString.Eliminar(this.listaString, datobuscar);

            this.listaString.Actualizar(this.listaString);
        }
コード例 #6
0
 public ListaVersiones <T> EliminarTodo(ListaVersiones <T> lista)
 {
     if (lista.ultimo != null)
     {
         lista = null;
     }
     return(lista);
 }
コード例 #7
0
 public void Actualizar(ListaVersiones <T> lista)
 {
     if (lista.primero != null)
     {
         int i = 0;
         lista.actual = lista.primero;
         do
         {
             i++;
             // Console.WriteLine(lista.actual.numeroNodo + ".\t " + lista.actual.fechaHora.ToString("MM/dd/yyyy HH:mm") + "\t " + lista.actual.versionComentario);
             lista.actual = lista.actual.siguiente;
         } while (lista.actual != null);
     }
 }//fin del método
コード例 #8
0
        public bool ifsave(ListaVersiones <T> lista, int last)
        {
            if (lista.ultimo != null)
            {
                if (lista.ultimo.numeroNodo == last)
                {
                    return(true);
                }
            }
            else

            {
                return(true);
            }

            return(false);
        }
コード例 #9
0
        }//fin del método

        public ListaVersiones <T> Eliminar(ListaVersiones <T> lista, int pNumeroNodo)
        {
            bool del = false;
            ListaVersiones <T> listaNueva = new ListaVersiones <T>();

            if (lista.primero != null)
            {
                // int i = 1;
                lista.actual = lista.primero;

                if (lista.actual.siguiente != null)
                {
                    while (lista.actual.siguiente != null)
                    {
                        if (lista.actual.numeroNodo.Equals(pNumeroNodo))
                        {
                            Program.lastVnodo = lista.ultimo.numeroNodo;
                            del          = true;
                            lista.actual = lista.actual.siguiente;
                            Console.WriteLine("The node has been deleted!");
                            if (lista.actual.siguiente == null)
                            {
                                listaNueva.Agregar(lista.actual.data, lista.actual.versionComentario, lista.actual.fechaHora, lista.actual.numeroNodo);
                                return(listaNueva);
                            }
                        }
                        if (lista.actual != null)
                        {
                            listaNueva.Agregar(lista.actual.data, lista.actual.versionComentario, lista.actual.fechaHora, lista.actual.numeroNodo);
                            lista.actual = lista.actual.siguiente;
                        }
                    }
                }
                if (lista.actual.siguiente == null && lista.actual != null)
                {
                    listaNueva.Agregar(lista.actual.data, lista.actual.versionComentario, lista.actual.fechaHora, lista.actual.numeroNodo);
                }
                lista = listaNueva;
            }
            if (!del)
            {
                Console.WriteLine("nodo inexistente");
            }
            return(listaNueva);
        }
コード例 #10
0
        }//fin del método

        public string Buscar(ListaVersiones <string> lista, int nNodo)
        {
            string datoBuscado = null;

            if (lista.primero != null)
            {
                int i = 1;
                lista.actual = lista.primero;
                do
                {
                    i++;
                    lista.actual = lista.actual.siguiente;
                    if (lista.actual.numeroNodo == nNodo)
                    {
                        datoBuscado = lista.actual.data;
                    }
                } while (lista.actual.siguiente != null);
            }
            return(datoBuscado);
        }//fin del método
コード例 #11
0
 public Controlador()
 {
     listaString = new ListaVersiones <string>();
 }
コード例 #12
0
        }//ifsave()

        public void allDel()
        {
            this.listaString = this.listaString.EliminarTodo(this.listaString);
        }
コード例 #13
0
 public void Delete(int datobuscar)
 {
     this.listaString = this.listaString.Eliminar(this.listaString, datobuscar);
     this.listaString.Actualizar(this.listaString);
 }