java文件管理器Word文档下载推荐.doc

上传人:b****1 文档编号:13065619 上传时间:2022-10-04 格式:DOC 页数:16 大小:307.56KB
下载 相关 举报
java文件管理器Word文档下载推荐.doc_第1页
第1页 / 共16页
java文件管理器Word文档下载推荐.doc_第2页
第2页 / 共16页
java文件管理器Word文档下载推荐.doc_第3页
第3页 / 共16页
java文件管理器Word文档下载推荐.doc_第4页
第4页 / 共16页
java文件管理器Word文档下载推荐.doc_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

java文件管理器Word文档下载推荐.doc

《java文件管理器Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《java文件管理器Word文档下载推荐.doc(16页珍藏版)》请在冰豆网上搜索。

java文件管理器Word文档下载推荐.doc

□报告规范;

其他:

评价教师签名:

一、实验目的

运用面向对象程序设计思想,基于Java文件管理和I/O框架,实现命令行下的文件管理器。

二、实验项目内容

1、实现文件夹创建、删除、进入。

2、实现当前文件夹下的内容罗列,能够根据文件名、日期、大小,类型进行排序。

3、实现文件拷贝和文件夹拷贝(文件夹拷贝指深度拷贝,包括所有子目录和文件)。

4、实现指定文件的加密和解密。

5、实现多个文件的压缩和解压缩。

6、实现一个大文件的分割和合并。

7、实现把项目导出为可执行的*.jar文件。

三、实验过程或算法(源程序)

要求:

写明设计思想、程序的结构、功能关系图、类的说明并按照UML的规范画出类之间的关系图、程序执行流程图,最后是源代码。

设计思想:

主界面给出所有的选项,通过switch-case事件,来选择不同功能。

运用到try-catch处理异常。

文件的操作用到了:

FileInputStream和FileOutputStream,BufferedInputStream和BufferedOutputStream,Scanner等流。

程序的结构:

src里共含有四个java文件,分别为压缩、解压缩、分割与合并、main和其余功能选项。

功能关系图:

创建目录

删除目录

复制文件

复制目录

加密解密文件

主界面列出目录

重命名

文件的压缩与解压

文件的分割与合成

退出

程序执行流程图:

开始

进入主界面

按下键盘上相应数字按钮

↓↓

按下数字1~9按下数字0

根据提示输入数据退出

实现功能

是↓否

是否继续?

源代码:

创建目录:

classCreateFile{

CreateFile(){

try{

System.out.println("

wheretocreate?

"

+"

pleaseinputthepath:

);

Scanners=newScanner(System.in);

Stringpath=s.next();

Filefile=newFile(path);

if(file.exists()){

System.out.println("

pleaseinputthefilename!

"

+"

例如F:

/src/sb。

txt"

Stringname=s.next();

Filef=newFile(path+File.separator+name);

f.mkdir();

successtocreate!

}else

thedirectoryisn'

texist!

}catch(Exceptione){

e.printStackTrace();

}

}

}

删除目录:

classDeleteFile{

Filepath;

publicDeleteFile(Filepath){

this.path=path;

publicvoidDelete(Filepath){

File[]files=path.listFiles();

for(inti=0;

i<

files.length;

i++){

if(files[i].isDirectory()){

Delete(files[i]);

}else{

files[i].delete();

}

path.delete();

复制文件:

classCopyFile{

CopyFile(Stringsource,Stringtarget){

Filef1=newFile(source);

Filef2=newFile(target);

FileInputStreaminputFile=newFileInputStream(f1);

FileOutputStreamoutputFile=newFileOutputStream(f2);

byte[]b=newbyte[1024*10];

intvalue=0;

while((value=inputFile.read(b))!

=-1){

outputFile.write(b,0,value);

outputFile.flush();

outputFile.close();

inputFile.close();

复制目录:

classCopyDirectory{

publicvoidcopyFolder(StringoldPath,StringnewPath){

(newFile(newPath)).mkdirs();

Fileo=newFile(oldPath);

String[]file=o.list();

Filetemp=null;

for(inti=0;

file.length;

if(oldPath.endsWith(File.separator)){

temp=newFile(oldPath+file[i]);

}else{

temp=newFile(oldPath+File.separator+file[i]);

}

if(temp.isFile()){

FileInputStreaminputDir=newFileInputStream(temp);

FileOutputStreamoutputDir=newFileOutputStream(newPath

+"

/"

+(temp.getName()).toString());

byte[]b=newbyte[1024*10];

intvalue;

while((value=inputDir.read(b))!

outputDir.write(b,0,value);

}

outputDir.flush();

outputDir.close();

inputDir.close();

if(temp.isDirectory()){

copyFolder(oldPath+"

+file[i],newPath+"

+file[i]);

列出目录:

classListDirectory{

ListDirectory(Stringpath){

Filedf=newFile(path);

if(!

df.exists()||(!

df.isDirectory())){

Listfailed!

System.out

.println(path+"

/"

containsbelowdirectoriseorfiles"

String[]files=df.list();

System.out.println(files[i]);

进入目录:

classEnterDirectory{

EnterDirectory(Stringpath){

if(df.exists()){

已进入此目录!

}else{

此目录不存在!

重命名:

Filenamepath=newFile(s.next());

if(namepath.exists()){

System.out.println("

inputnewname"

Filenewname=newFile(s.next());

if(namepath.renameTo(newname)==true){

Successtorename!

fileexist"

加密解密文件:

publicvoidgetKey(StringstrKey){

KeyGenerator_generator=KeyGenerator.getInstance("

DES"

_generator.init(newSecureRandom(strKey.getBytes()));

this.key=_generator.generateKey();

_generator=null;

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

当前位置:首页 > 解决方案 > 工作计划

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

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