Java File类 编写一个es文件管理器器

JAVA之File类-删除一个有内容的文件夹
package ioTest.io3;
* 删除有内容的文件夹:从最里面一直向外删除。建议千万不要删除硬盘上面有用的文件夹哦
* 方法思路
* 循环+递归
import java.io.F
public class RemoveDir {
public static void main(String[] args) {
// TODO Auto-generated method stub
File file=new File("F:\\removeDirTest");
removedir(file);
public static void removedir(File file)
File[] files=file.listFiles();
for(File f:files)
if(f.isDirectory())//递归调用
removedir(f);
f.delete();
//一层目录下的内容都删除以后,删除掉这个文件夹
file.delete();【图文】第十二章 java File类以及IO流_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
第十二章 java File类以及IO流
上传于|0|0|暂无简介
大小:2.62MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢  1)掌握File类作用
  2)可以使用file类中方法对文件进行读写操作。
  唯一与文件有关的类。使用file类可进行创建或删除操作,要想使用File类,首先观察File类的构造方法。
  public File(String pathname);实例化File类的时候,必须设置好路径。
  常量::
public staitc final String pathSeparator;
  明明使用了static final定义的常量,这里为什么使用了小写方式。实际上这属于JAVA的历史遗留问题。
实例操作一:创建一个新文件。
  创建文件:
public boolean
creatNewFile() throws IOExcetion
  用以上方法就可以创建文件,但是注意要有异常处理。
  在D盘创建一个文件:
import java.io.F
import java.io.IOE
public class FileDemo01{
public static void main(String args[]){
File f = new File("d:\\test.txt") ;
// 实例化File类的对象,给出路径
f.createNewFile() ;
// 创建文件,根据给定的路径创建
}catch(IOException e){
e.printStackTrace() ;
// 输出异常信息
  运行结果:
   步骤:首先创建File对象,创建对象的时候要给出文件路径,然后用这个对象调用creatNewFile()方法,注意调用方法时候要有异常处理。
  以上完成了文件创建功能,但是开发中以上程序编写肯定会出现错误,在各个操作系统中,路径分隔符是不一样的。例如:
  windows使用反斜杠:"\"
  Linux中使用正斜杠:"/"
  要想让JAVA可移植增强,最好让操作系统自动使用分隔符。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
System.out.println("pathSeparator:" + File.pathSeparator) ;
// 调用静态常量
System.out.println("separator:" + File.separator) ;
// 调用静态常量
  运行结果:
pathSeparator:;
separator:\
  要想保持可移植性,在编写的时候应该使用File类中的常量。修改之前程序。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator+"test.txt") ;
// 实例化File类的对象
f.createNewFile() ;
// 创建文件,根据给定的路径创建
}catch(IOException e){
e.printStackTrace() ;
// 输出异常信息
  注意:在操作文件的时候一定要注意分隔符,使用File.separator表示。
删除一个指定的文件
  删除文件方法:
public boolean delete();
  将之前建立好的文件删除掉。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator+"test.txt") ;
// 实例化File类的对象
f.delete() ;
// 删除文件
  运行结果:
  确实删除了文件。
  此时文件确实删除了,但是删除之前最好进行判断文件是不是存在。
  在File类中可以使用exists()方法判断一个文件是否存在。
public boolean exists();
  使用以上代码增强之前程序。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator+"test.txt") ;
// 实例化File类的对象
if(f.exists()){
// 如果文件存在则删除
f.delete() ;
// 删除文件
System.out.println("文件不存在");
  运行结果:
文件不存在
  由于之前已经删除了,所以这里文件不存在。
综合创建,删除文件的操作
  要求:给定一个路径,如果文件存在删除,不存在,创建之。
import java.io.F
import java.io.IOE
public class FileDemo06{
public static void main(String args[]){
File f = new File("d:"+File.separator+"test.txt") ;
// 实例化File类的对象
if(f.exists()){
// 如果文件存在则删除
f.delete() ;
// 删除文件
f.createNewFile() ;
// 创建文件,根据给定的路径创建
}catch(IOException e){
e.printStackTrace() ;
// 输出异常信息
  提示:对于文件的后缀可有可无。
创建文件夹
  使用mkdir()方法创建文件夹、
public boolean mkdir();
import java.io.F
import java.io.IOE
public class FileDemo07{
public static void main(String args[]){
File f = new File("d:"+File.separator+"mldn") ;
// 实例化File类的对象
f.mkdir() ;
// 创建文件夹
  运行结果:创建成功一个名为mldn的文件夹。
列出指定目录的全部文件。
  如果给出一个目录,可以列出目录中全部内容,但是列出的方法存在两个:
  1,以字符串数组的形式返回。
public String [] list();
  2,以File数组形式返回:
pulbic File [] listFiles();
  操作一:list()方法:
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator) ;
// 实例化File类的对象
String str[] = f.list() ;
// 列出给定目录中的内容
for(int i=0;i&str.length;i++){
System.out.println(str[i]) ;
  运行结果:
$RECYCLE.BIN
360SoftMove
BDSoftMgrData
Config.Msi
Program Files
System Volume Information
TrainingPackage_dna
TrainingPackage_zcgl
搜狗高速下载
文件清理.bat
  以上只是列出全部文件名字。
  操作2,使用listFiles()方法列出。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator) ;
// 实例化File类的对象
File files[] = f.listFiles() ;
// 列出全部内容,注意需要一个files对象数组接受这个返回数组。
for(int i=0;i&files.i++){
System.out.println(files[i]) ;
  运行结果:
d:\$RECYCLE.BIN
d:\360SoftMove
d:\BDSoftMgrData
d:\Config.Msi
d:\FDownload
d:\GSP平台
d:\GS管理套件
d:\MSOCache
d:\Program Files
d:\System Volume Information
d:\TrainingPackage_dna
d:\TrainingPackage_zcgl
d:\久其培训
d:\办公软件
d:\我的文档
d:\搜狗高速下载
d:\文件清理.bat
d:\编程软件
d:\蓝桥杯试题
  此时列出的是完整的路径。这样对于程序本身是很容易操作的。
判断一个给定的路径是否目录。
  在File类中直接使用方法:public boolean&isDirectory(); 
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[])
File f = new File("d:"+File.separator) ;
// 实例化File类的对象
if(f.isDirectory()){
// 判断是否是目录
System.out.println(f.getPath() + "路径是目录。") ;
System.out.println(f.getPath() + "路径不是目录。") ;
  运行结果:
d:\路径是目录。
列出指定目录的全部内容
  如果给定一个目录,则讲目录的全部文件列出来,但是列的时候可能存在子文件夹,子文件夹也有子文件夹。
  应该采用递归的形式。
package Thread1;
import java.io.F
import java.io.IOE
public class demo1{
public static void main(String args[]){
File my = new File("d:" + File.separator+"FDownload") ;
// 操作路径
print(my) ;
public static void print(File file){
// 递归调用
if(file!=null){
// 判断对象是否为空
if(file.isDirectory()){
// 如果是目录
File f[] = file.listFiles() ;
// 列出全部的文件
if(f!=null){
// 判断此目录能否列出
for(int i=0;i&f.i++){
print(f[i]) ;
// 因为给的路径有可能是目录,所以,继续判断,继续递归。
System.out.println(file) ;
// 输出路径
  运行结果:
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第一集 诗的起源[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第七集 亲情诗[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第三集 春江花月夜[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第二集 枫桥夜泊[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第五集 民歌[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第六集 怀乡诗[高清版].mp4
d:\FDownload\合并\0001.中国网络电视台-《诗词中国》 第四集 黄鹤楼与鹳雀楼[高清版].mp4
  这里用到了,判断路径是否为文件夹:isDirection()。列出文件夹下目录方法:listFiles()。还有递归。
阅读(...) 评论()

我要回帖

更多关于 re文件管理器 的文章

 

随机推荐