操作系统课程设计文件管理实验报告剖析docWord文档格式.docx

上传人:b****2 文档编号:14260410 上传时间:2022-10-21 格式:DOCX 页数:13 大小:18.01KB
下载 相关 举报
操作系统课程设计文件管理实验报告剖析docWord文档格式.docx_第1页
第1页 / 共13页
操作系统课程设计文件管理实验报告剖析docWord文档格式.docx_第2页
第2页 / 共13页
操作系统课程设计文件管理实验报告剖析docWord文档格式.docx_第3页
第3页 / 共13页
操作系统课程设计文件管理实验报告剖析docWord文档格式.docx_第4页
第4页 / 共13页
操作系统课程设计文件管理实验报告剖析docWord文档格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

操作系统课程设计文件管理实验报告剖析docWord文档格式.docx

《操作系统课程设计文件管理实验报告剖析docWord文档格式.docx》由会员分享,可在线阅读,更多相关《操作系统课程设计文件管理实验报告剖析docWord文档格式.docx(13页珍藏版)》请在冰豆网上搜索。

操作系统课程设计文件管理实验报告剖析docWord文档格式.docx

操作。

建立相应的数据结构(如:

位示图等),模拟盘块管理。

可以参照图6界面进行设计。

3、算法设计

1)、定义主面板MainFrame,布局好各个控件,并初始化

/*

*往node节点下添加一个子节点obj;

*/

publicvoidaddChild(Objectobj,DefaultMutableTreeNodenode){if(obj!

=null&

&

node!

=null){

DefaultMutableTreeNodetemp=newDefaultMutableTreeNode(obj);

if(node.getAllowsChildren())

node.add(temp);

if(!

((String)obj).equals("

A:

\\"

)&

((String)

obj).length()<

=3)//防止读取

A软

驱,会出现异常;

用于初始用的;

addChildren(cmd.listAll((String)obj),temp);

}

*在node节点下添加数组children;

publicvoidaddChildren(String[]children,DefaultMutableTreeNodenode){if(children!

=null){

for(inti=0;

i<

children.length;

i++){

addChild(children[i],node);

*对树的节点进行预提取;

publicvoidaddPrefetchChildren(Stringpath,DefaultMutableTreeNodenode){addChildren(cmd.listDirectory(path),node);

*对路径路径进行连接;

(已经获得了所有的整个路径,需要量转化)

publicStringtoFilePath(Stringstr){

//先去掉头尾的[];

Stringpa=str.substring(1,str.length()-1);

String[]temp=pa.split("

"

);

Stringpath="

"

;

for(inti=1;

temp.length;

path.endsWith("

!

path.equals("

))//不为空是为去根节点;

path+="

path+=temp[i];

returnpath;

publicStringtoPFilePath(Stringstr){

temp.length-1;

publicclassExpandListenerimplementsTreeWillExpandListener{

*树展开及收缩监听;

privateMainFramemainFrame=null;

publicExpandListener(MainFramemainFrame){

this.mainFrame=mainFrame;

publicvoidtreeWillExpand(TreeExpansionEventevent){

//对节点的路径进行转化

Stringpath=toFilePath(event.getPath().toString());

TreePathtreePath=event.getPath();

DefaultMutableTreeNodenode=(DefaultMutableTreeNode)treePath

.getLastPathComponent();

//System.out.println("

所展开节点的路径:

+path);

//System.out.println(treePath);

if(node.getDepth()<

2){

Enumerationchildren=node.children();

StringfilePath="

while(children.hasMoreElements()){

DefaultMutableTreeNodetemp=(DefaultMutableTreeNode)children

.nextElement();

filePath="

filePath=path;

filePath.endsWith("

))

filePath+="

filePath+=temp.toString();

//System.out.println("

temp="

+filePath);

mainFrame.addPrefetchChildren(filePath,temp);

2)、添加功能“添加文件(夹)addframe()”、“修改文件(夹)mvframe()”

publicvoidaddframe(){

JFrameaddFrame=newJFrame();

JLabeljlbl=newJLabel("

请输入要添加的文件

addrs=newJLabel("

addrs.setBounds(180,10,100,25);

jlbl.setBounds(10,10,170,25);

addfile=newJTextField();

addfile.setBounds(10,40,260,25);

btnaddf=newJButton("

添加文件"

);

btnaddd=newJButton("

添加文件夹"

btnaddf.setBounds(20,80,100,25);

btnaddd.setBounds(160,80,100,25);

btnaddf.addActionListener(this);

btnaddd.addActionListener(this);

addFrame.add(jlbl);

addFrame.add(addrs);

addFrame.add(addfile);

addFrame.add(btnaddf);

addFrame.add(btnaddd);

addFrame.setBounds(400,350,300,150);

addFrame.setTitle("

添加文件(夹)"

(夹)名:

"

addFrame.setLayout(null);

addFrame.setVisible(true);

publicvoidmvframe(){

JFramemvFrame=newJFrame();

请输入修改后的文件名:

mvrs=newJLabel("

mvrs.setBounds(160,10,140,25);

mvfile=newJTextField();

mvfile.setBounds(10,40,260,25);

btnmvf=newJButton("

修改文件名"

btnmvd=newJButton("

修改文件夹名"

btnmvf.setBounds(10,80,120,25);

btnmvd.setBounds(150,80,120,25);

btnmvf.addActionListener(this);

btnmvd.addActionListener(this);

mvFrame.add(jlbl);

mvFrame.add(mvrs);

mvFrame.add(mvfile);

mvFrame.add(btnmvf);

mvFrame.add(btnmvd);

mvFrame.setBounds(400,350,300,150);

mvFrame.setTitle("

修改文件(夹)名"

mvFrame.setLayout(null);

mvFrame.setVisible(true);

3)显示文件

*显示系统中的所有盘符;

publicString[]ListDisks(){

Fileroots[]=File.listRoots();

//根盘符;

Stringdisks[]=newString[roots.length];

roots.length;

disks[i]=roots[i].toString();

returndisks;

*获得路径path下的文件;

publicString[]listAll(Stringpath){

try{

Filef=newFile(path);

String[]fileName;

Stringtmp=null;

mainFrame.fileshow.setText(null);

mainFrame.filestyle.setText(null);

if(f.isDirectory()){

fileName=f.list();

共有"

+fileName.length+"

个文件"

for(inti=0;

fileName.length;

mainFr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1