//Metodo que se encarga de actualizar el diccionario una vez que se halla cerrado o que se necesite vericar valores
        public void actualizaDiccionario(FileStream archivolleg)
        {
            borraDic();

            int r = 0;

            Byte[] idEnti;
            char[] nombreEnti;
            int    dirEnt;
            int    dirAtri;
            int    dirDat;
            int    dirSigEnt;
            string noEn = "";

            //Variables de atributos
            Byte[] idAtriL;
            char[] nombreAtriL;
            char[] tipoDL;
            int    longiL;
            int    dirAtrL;
            int    tipoIndL;
            int    dirIndL;
            int    dirSigAtL;
            string noAt        = "";
            bool   bandSigEnt  = true;
            bool   bandSigAtri = true;



            this.archivo = File.Open(nomArchivo, FileMode.Open, FileAccess.Read);

            BinaryReader br = new BinaryReader(this.archivo);


            archivo.Seek(0, SeekOrigin.Begin);
            int dire = br.ReadInt32();

            cab = dire;
            //dire = 8;

            r = 0;
            if (cab != -1)
            {
                while (bandSigEnt)
                {
                    archivo.Seek(dire, SeekOrigin.Begin);
                    idEnti = br.ReadBytes(5);
                    r      = 0;
                    dire  += 5;
                    archivo.Seek(dire, SeekOrigin.Begin);
                    //BinaryReader br = new BinaryReader(archivo);
                    nombreEnti = br.ReadChars(30);
                    r          = 0;
                    dire      += 30;
                    archivo.Seek(dire, SeekOrigin.Begin);
                    dirEnt = br.ReadInt32();
                    r      = 0;
                    dire  += 8;
                    archivo.Seek(dire, SeekOrigin.Begin);
                    dirAtri = br.ReadInt32();
                    r       = 0;
                    dire   += 8;
                    archivo.Seek(dire, SeekOrigin.Begin);
                    dirDat = br.ReadInt32();
                    r      = 0;
                    dire  += 8;
                    archivo.Seek(dire, SeekOrigin.Begin);
                    dirSigEnt = br.ReadInt32();
                    r         = 0;
                    dire      = dirAtri;
                    for (int i = 0; i < nombreEnti.Length; i++)
                    {
                        if (char.IsLetter(nombreEnti.ElementAt(i)))
                        {
                            noEn += nombreEnti.ElementAt(i);
                        }
                    }
                    r = 0;
                    Entidad ent = new Entidad(idEnti, noEn, dirEnt, dirAtri, dirDat, dirSigEnt);
                    noEn = "";
                    listEntidad.Add(ent);
                    r = 0;
                    if (dirAtri != -1)
                    {
                        while (bandSigAtri)
                        {
                            r = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            idAtriL = br.ReadBytes(5);
                            dire   += 5;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            nombreAtriL = br.ReadChars(30);
                            dire       += 30;
                            r           = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            tipoDL = br.ReadChars(1);
                            dire  += 1;
                            r      = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            longiL = br.ReadInt32();
                            dire  += 4;
                            r      = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            dirAtrL = br.ReadInt32();
                            dire   += 8;
                            r       = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            tipoIndL = br.ReadInt32();
                            dire    += 4;
                            r        = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            dirIndL = br.ReadInt32();
                            dire   += 8;
                            r       = 0;
                            archivo.Seek(dire, SeekOrigin.Begin);
                            dirSigAtL = br.ReadInt32();
                            dire      = dirSigAtL;
                            r         = 0;
                            for (int i = 0; i < nombreAtriL.Length; i++)
                            {
                                if (char.IsLetter(nombreAtriL.ElementAt(i)) || nombreAtriL.ElementAt(i) == '_')
                                {
                                    noAt += nombreAtriL.ElementAt(i);
                                }
                            }
                            Atributo atr = new Atributo(idAtriL, noAt, tipoDL[0], longiL, dirAtrL, tipoIndL, dirIndL, dirSigAtL);
                            noAt = "";
                            ent.listAtrib.Add(atr);
                            r = 0;


                            if (dirSigEnt == -1 && dirSigAtL == -1)
                            {
                                bandSigEnt = false;
                                r          = 0;
                            }

                            if (dirSigAtL == -1)
                            {
                                bandSigAtri = false;
                                r           = 0;
                                dire        = dirSigEnt;
                            }
                        }
                    }
                    else
                    {
                        dire = dirSigEnt;
                        if (dire == -1)
                        {
                            break;
                        }
                    }
                    bandSigAtri = true;
                }
            }


            bandSigEnt = true;
            r          = 0;
            this.archivo.Close();
        }