示例#1
0
        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DeleteBook deleteBook = new DeleteBook();

            deleteBook.FormClosed += UpdateDataGridWhenFormClosed;
            deleteBook.ShowDialog();
        }
示例#2
0
        private void Delete(object sender, EventArgs e)
        {
            FileStream FS = new FileStream("Book.txt", FileMode.Open);

            string BeDeleted = DeleteBook.Text;

            byte[] p; bool Found = false; string Temp = "";

            while (FS.Position != FS.Length && !Found)
            {
                Book   book     = new Book();
                string BookName = "";

                book.FieldID_Len = FS.ReadByte();
                p = new byte[book.FieldID_Len];
                FS.Read(p, 0, book.FieldID_Len);
                for (int i = 0; i < book.FieldID_Len; i++)
                {
                    Temp += (char)p[i];
                }
                book.set_FieldID(Temp);

                FS.Seek(5, SeekOrigin.Current);
                p = new byte[20];
                FS.Read(p, 0, 20);
                for (int i = 0; i < 20; i++)
                {
                    BookName += (char)p[i];
                }
                book.set_BookName(BookName);

                if (BeDeleted.CompareTo(BookName) == 0)
                {
                    book.BookAuthor_Len = FS.ReadByte();
                    for (int i = 0; i < book.BookAuthor_Len; i++)
                    {
                        FS.WriteByte((byte)'\0');
                    }

                    long releas = (book.BookAuthor_Len + 25 + book.FieldID_Len);

                    FS.Seek(-releas, SeekOrigin.Current);
                    for (int i = 0; i < releas; i++)
                    {
                        FS.WriteByte((byte)'\0');
                    }

                    MessageBox.Show("Record Deleted !! ");
                    Found = true;
                }

                else
                {
                    book.BookAuthor_Len = FS.ReadByte();
                    FS.Seek(book.BookAuthor_Len, SeekOrigin.Current);
                }
            }

            DeleteBook.Clear();


            FS.Close();
        }