private void 帮助ToolStripMenuItem_Click(object sender, EventArgs e) { uint size = FileDate.CountOf <Record>(); for (int i = 0; i < size; i++) { FileDate.ReadOne <Record>(i).debug(); } }
private List <BookMaster> SearchByKeyword(Book book) { List <BookMaster> bklist = new List <BookMaster>(); BookMaster master = new BookMaster(); uint size = FileDate.CountOf <BookMaster>(); for (int i = 0; i < size; i++) { master = FileDate.ReadOne <BookMaster>(i); if (master.SimiliarTo(book)) { bklist.Add(master); } } return(bklist); }
private void confirm_Click(object sender, EventArgs e) { if (Vis.Checked) { Main.user = new User("Visitor"); qual = true; } else if (!(Stu.Checked || Worker.Checked || Admin.Checked)) { MessageBox.Show("请选择你的登录身份!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } else { User utemp = new User(); uint size = FileDate.CountOf <User>(); for (int i = 0; i < size; i++) { utemp = FileDate.ReadOne <User>(i); if (utemp.ID == IDtxt.Text && utemp.Pwd == PWDtxt.Text) { if ((Stu.Checked && utemp.Pri == Privilege.学生) || (Worker.Checked && utemp.Pri == Privilege.职工) || (Admin.Checked && utemp.Pri == Privilege.管理员)) { qual = true; Main.user = new User(utemp); main.updateStatus(); break; } } } } if (qual) { this.Close(); } else { MessageBox.Show("未找到用户信息,用户名或密码或者登录身份错误.", "登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
//通过ISBN来找到书籍(书籍ISBN是唯一的,可以当做一个标识) public static List <BookMaster> SearchByISBN(string isbn) { BookMaster master = new BookMaster(); uint count = FileDate.CountOf <BookMaster>(); List <BookMaster> bklist = new List <BookMaster>(1); for (int i = 0; i < count; i++) { master = FileDate.ReadOne <BookMaster>(i); if (master.Info.ISBN.Contains(isbn)) { bklist.Add(master); break; } } if (bklist.Count == 0) { MessageBox.Show("未找到该ISBN编号的书", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } return(bklist); }
private List <Record> RecordWithinSpan(int span) { List <Record> reclist = new List <Record>(); int len = (int)FileDate.CountOf <Record>(); int size = Marshal.SizeOf(typeof(Record)); Record rec = new Record(); for (int i = 1; i <= len; i++) { rec = FileDate.ReadOne <Record>(len - i); if (rec.spanDaysToPresent() <= span) { reclist.Add(rec); } else { break; } } return(reclist); }
//删除对象(相当于将对象变为默认值) public static void Delete <T>(T t) where T : IGet, new() { int structsize = Marshal.SizeOf(typeof(T)); uint count = FileDate.CountOf <T>(); using (FileStream fs = new FileStream(t.ToString() + ".dat", FileMode.Open)) { using (BinaryReader br = new BinaryReader(fs)) { for (uint i = 0; i < count; i++) { if (Byte2Struct <T>(br.ReadBytes(structsize)).GetID() == t.GetID()) { using (BinaryWriter bw = new BinaryWriter(fs)) { fs.Position -= structsize; bw.Write(Struct2Byte <T>(new T())); } return; } } } } }