java文件操作实验

java文件操作实验

ID:6031889

大小:102.00 KB

页数:5页

时间:2017-12-31

java文件操作实验_第1页
java文件操作实验_第2页
java文件操作实验_第3页
java文件操作实验_第4页
java文件操作实验_第5页
资源描述:

《java文件操作实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一.实验目的及实验环境学习并掌握java中文件的操作二.实验内容将下列文件操作类补充完整classMyFile{//获取目录大小publiclonggetLength(Stringpath);//拷文件publicvoidcopy(Stringsource,Stringdist);//拷目录(目录需带子目录)publicvoidcopyDir(StringsourceDir,StringdistDir);}三.方案设计1.获取目录大小:如果是目录则递归计算其内容的总大小,如果是文件则直接返回其大小,以字节为单位2.文件拷贝:将文件分段读入内存中,然后写入新的文件3.目录拷贝:如

2、果是目录则在对应位置新建目录,如果是文件则调用文件拷贝函数进行拷贝importjava.io.*;publicclassFileIO{//获取目录大小publiclonggetLength(Stringpath){FilecurrentFile=newFile(path);longsize=0;if(currentFile.isDirectory()){FileFileList[]=currentFile.listFiles();for(inti=0;i

3、etLength(FileList[i].getPath());}else{size=size+FileList[i].length();}}returnsize;}else{returncurrentFile.length();}}//拷文件publicvoidcopy(Stringsource,Stringdist){FilesourceFile=newFile(source);FiledistFile=newFile(dist);try{if(!sourceFile.isFile()){System.out.println("Path"+source+"givedisno

4、tafile");return;}if(!sourceFile.exists()){System.out.println("FileNotexist");}if(distFile.exists()){System.out.println("Distfile"+dist+"isalreadyexist");}else{distFile.createNewFile();}intBufferLength=4096;//4k对齐FileInputStreamFileIn=newFileInputStream(sourceFile);FileOutputStreamFileOut=new

5、FileOutputStream(distFile);byte[]buffer=newbyte[BufferLength];while(true){intByteRealRead=FileIn.read(buffer);if(ByteRealRead==-1){FileIn.close();FileOut.flush();FileOut.close();return;}elseFileOut.write(buffer,0,ByteRealRead);}}catch(Exceptionee){System.out.println("Exception:"+ee.getMessag

6、e());}}publicvoidcopyDir(StringsourceDir,StringdistDir){//在distDir文件夹下新建sourceDir指向的文件夹同名文件夹,//并将文件夹中所有文件或目录拷贝到新文件夹if(sourceDir.lastIndexOf('/')!=sourceDir.length()){sourceDir+='/';}if(distDir.lastIndexOf('/')!=distDir.length()){distDir+='/';}FilesourceDirFile=newFile(sourceDir);FiledistDirF

7、ile=newFile(distDir+sourceDirFile.getName());if(sourceDirFile.exists()){if(sourceDirFile.isDirectory()){if(!distDirFile.exists()){distDirFile.mkdirs();}File[]dirChildren=sourceDirFile.listFiles();for(FilecurrentChild:dirChildren)if(currentChild.isD

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。