private void 除ToolStripMenuItem1_Click(object sender, EventArgs e) { ListViewItem current_item = new ListViewItem(); if (listView1.SelectedItems.Count != 0) { current_item = listView1.SelectedItems[0]; } else { MessageBox.Show("Please select a item"); return; } File current_file = directory.getFile(getPointer(current_item)); FCB current_fcb = directory.getFCB(current_file); //List<int> indexs = current_file.readTable(); int indexs = current_file.readTable(); Overall_bitMap.withdraw(indexs); current_fcb.remove(); directory.removeFile(current_fcb); UpdateView(); }
private void 除ToolStripMenuItem_Click(object sender, EventArgs e) { //如果选中文件个数不只一个,则选中的文件为第一个,否则提示用户选中一个文件 ListViewItem current_item = new ListViewItem(); if (listView1.SelectedItems.Count != 0) { current_item = listView1.SelectedItems[0]; } else { MessageBox.Show("Please select a item"); return; } //通过内存指针找到该文件 File current_file = catalog.getFile(getPointer(current_item)); //获得该文件的PCB FCB current_fcb = catalog.getFCB(current_file); //获得当前文件的所有内存块 List <int> indexs = current_file.indexPointer.readTable(); //将所有内存块均置为可用的状态 bitMap.withdraw(indexs); current_fcb.remove(); UpdateListView(); UpdateTreeView(); catalog.removeFile(current_fcb); UpdateListView(); UpdateTreeView(); }