/// <summary> /// Inserta un bloque en el archivo /// </summary> /// <param name="ent"></param> /// <param name="nomDat"></param> public void insertaBloqueDatos(Entidad ent,List<string> nomDat) { Bloque bloque; long dirBloque = 0; //toma la direccion que tendra el bloque dirBloque = archivo.getLength(); bloque = new Bloque(dirBloque, (long)-1); ent.ListBloq.Add(bloque); //escribe en archivo el bloque archivo.escribeBloque(bloque); //escribe los atributos en archivo for(int i=0;i<ent.Atributos.Count;i++) { insertaAtDato(ent.Atributos[i], nomDat[i]); } //Reescribe las direcciones de la lista reescribeDirsDatos(ent); }
public void escribeBloque(Bloque bl) { stream.Position = stream.Length; writer.Write(bl.Direccion); writer.Write(bl.ApuntaDato); }
public Bloque getBloqueDatos(long direccion) { stream.Position = direccion; Bloque bl = new Bloque(reader.ReadInt64(), reader.ReadInt64()); return bl; }