예제 #1
0
        /// <summary>
        /// Metoda naplni tento blok datami z array of bytov
        /// Zo suboru co mi prislo, tak naplnim record.
        /// </summary>
        /// <param name="byteArray">pole bytov<param>
        /// <param name="hasAdress"></param>
        public Block FromByteArray(byte[] byteArray)
        {
            int temp_index = 0;

            //adresa prveho
            //pomocne pole bytov
            byte[] temp = new byte[GetSize()];
            //pocet zaznamov, tkore nacitavam
            byte[] pomB = new byte[4];
            Array.Copy(byteArray, pomB, 4);
            int pocetZaznamov = BitConverter.ToInt32(pomB, 0);

            temp_index = 4;
            pomB       = new byte[4];
            Array.Copy(byteArray, temp_index, pomB, 0, 4);
            Hlbka       = BitConverter.ToInt32(pomB, 0);
            temp_index += 4;

            int i = 0;

            for (int j = 0; j < pocetZaznamov; j++)
            {
                // if (byteArray.Length > temp_index)
                {
                    byte[] pomBytes = new byte[VelkostZaznamu];
                    Array.Copy(byteArray, temp_index, pomBytes, 0, VelkostZaznamu);
                    temp_index += VelkostZaznamu;
                    //pridam novy record vytvorenych z danych bytov.
                    PoleRecordov.Add(_tempRecord.FromByteArray(pomBytes));
                }
            }
            return(this);
        }
예제 #2
0
 /// <summary>
 /// Metoda prida zaznam do bloku.
 /// </summary>
 /// <param name="record">Zaznam ktory chcem pridat. </param>
 /// <returns>Hodnotu adresy, kde bol pridany zaznam. </returns>
 public bool PridajRecord(Record record)
 {
     if (JePlny())
     {
         return(false);
     }
     else
     {
         PoleRecordov.Add(record);
     }
     return(true);
 }