資源簡介
了解磁盤文件系統的結構、功能和實現。并可練習合作完成系統的團隊精神和提高程序設計能力。
設計一個簡單的文件系統,用文件模擬磁盤,用數組模擬緩沖區(qū),要求:
(1) 支持多級目錄結構,支持文件的絕對讀路徑;
(2) 文件的邏輯結構采用流式結構,物理結構采用鏈接結構中的顯式鏈接方式;
(3) 采用文件分配表 FAT;
(4) 實現的命令包括建立目錄、列目錄、刪除空目錄、建立文件、刪除文件、顯示文件內容、打開文件、讀文件、寫文件、關閉文件、改變文件屬性。
(5) 最后編寫主函數對所作工作進行測試。

代碼片段和文件信息
package?com.csh.filesystem.viewer;
import?java.awt.BorderLayout;
import?java.awt.Color;
import?java.awt.Container;
import?java.awt.Dimension;
import?java.awt.FlowLayout;
import?java.awt.GridLayout;
import?java.awt.event.MouseEvent;
import?java.awt.event.MouseListener;
import?javax.swing.BoxLayout;
import?javax.swing.Icon;
import?javax.swing.ImageIcon;
import?javax.swing.JLabel;
import?javax.swing.JList;
import?javax.swing.JPanel;
import?javax.swing.JScrollPane;
import?javax.swing.JSplitPane;
import?javax.swing.JTextPane;
import?javax.swing.JTree;
import?javax.swing.SwingConstants;
import?javax.swing.tree.DefaultMutableTreeNode;
import?com.csh.filesystem.model.Disk;
import?com.csh.filesystem.model.File;
import?com.csh.filesystem.model.Folder;
import?com.csh.filesystem.util.FileSystemUtil;
import?com.csh.filesystem.util.MessageUtil;
public?class?Tree?extends?JPanel?{
private?static?final?long?serialVersionUID?=?2352829445429133249L;
private?JTree?tree;
private?JScrollPane?jsp1?jsp2;
private?JSplitPane?jsp;
private?JPanel?jp1;
private?JLabel?jl?jl2?jl3?jl4;
private?JLabel[]?jLabel;
private?JList?middle;
private?Mainframe?mainframe;
public?Tree()?{
DefaultMutableTreeNode?node1?=?new?DefaultMutableTreeNode(new?Disk(“C“));
jp1?=?new?JPanel();
tree?=?new?JTree(node1);
jsp1?=?new?JScrollPane(tree);
jp1.setLayout(new?FlowLayout(FlowLayout.LEFT));
jp1.setBackground(Color.white);
final?int?n?=?101;
jp1.setPreferredSize(new?Dimension(482?FileSystemUtil.getHeight(n)));
jLabel?=?new?JLabel[n];
for?(int?i=0;?i jLabel[i]?=?new?MyJLabel(true?“文件“?+i);
jp1.add(jLabel[i]);
jLabel[i].addMouseListener(new?MouseListener()?{
@Override
public?void?mouseReleased(MouseEvent?e)?{
// jl.setIcon(new?ImageIcon(FileSystemUtil.file1Path));
}
@Override
public?void?mousePressed(MouseEvent?e)?{
}
@Override
public?void?mouseExited(MouseEvent?e)?{
//?TODO?Auto-generated?method?stub
//jl.setIcon(new?ImageIcon(FileSystemUtil.filePath));
for?(int?j=0;?j if?(e.getSource()?==?jLabel[j]){
jLabel[j].setIcon(new?ImageIcon(FileSystemUtil.filePath));
}
}
}
@Override
public?void?mouseEntered(MouseEvent?e)?{
for?(int?j=0;?j if?(e.getSource()?==?jLabel[j]){
jLabel[j].setIcon(new?ImageIcon(FileSystemUtil.file1Path));
}
}
}
@Override
public?void?mouseClicked(MouseEvent?e)?{
//?TODO?Auto-generated?method?stub
if?(e.getClickCount()?==?2){
MessageUtil.showMgs(jsp2?“哈哈~逗你玩“);
}
}
});
}
jsp2?=?new?JScrollPane(jp1);
jsp2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
jsp2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jsp2.setPreferredSize(new?Dimension(482?515));
//
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2014-09-26?18:41??FileSystem\.classpath
?????文件????????388??2014-09-26?12:36??FileSystem\.project
?????文件?????????91??2014-09-18?16:36??FileSystem\.settings\org.eclipse.core.resources.prefs
?????文件????????598??2014-09-14?16:27??FileSystem\.settings\org.eclipse.jdt.core.prefs
?????文件????????782??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\exception\FileSystemException.class
?????文件????????644??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\Disk.class
?????文件???????1011??2014-10-25?18:40??FileSystem\bin\com\csh\filesystem\model\FAT.class
?????文件???????3346??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\File.class
?????文件???????3270??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\Folder.class
?????文件???????1270??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\OpenFile.class
?????文件???????1488??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\OpenFiles.class
?????文件????????677??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\model\Pointer.class
?????文件???????9380??2014-10-26?20:00??FileSystem\bin\com\csh\filesystem\service\FATService.class
?????文件???????1368??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\util\FileSystemUtil.class
?????文件????????971??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\util\MessageUtil.class
?????文件???????1834??2014-10-17?10:13??FileSystem\bin\com\csh\filesystem\viewer\HelpDialog.class
?????文件???????1772??2014-10-24?12:44??FileSystem\bin\com\csh\filesystem\viewer\JieShao.class
?????文件????????916??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????1241??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????2604??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????5705??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????1592??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????2420??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????3492??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????4003??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????2744??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????2727??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????1573??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????7025??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
?????文件???????7005??2014-10-27?14:55??FileSystem\bin\com\csh\filesystem\viewer\Mainfr
............此處省略80個文件信息
評論
共有 條評論