Java 基本文件操作

package com.isoft;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileUtils {
    //(1)根据指定文件目录,创建一个目录D:/adf/sdf
     public static void createDir(String path,String fileName) throws Exception{
         try {
             File file=new File(path);
             if(file.exists()&&fileName!=null&&!fileName.equals("")){
                 if(file.isDirectory()){
                     if(fileName.endsWith("txt")){
                         File resfile=new File(file,fileName);
//                         resfile.mkdirs();//创建一级目录
                         resfile.createNewFile();//创建文件
                     }
                     else{
                         System.out.println("请创建txt文本");
                     }
                    
                 }
                 else{
                     System.out.println("存在,但不是木了");
                 }
             }
             else{
                 System.out.println("根目录不存在");
             }
        } catch (Exception e) {
            throw new Exception("子目录创建失败");
        }
     }
     //使用循环方式输出n阶乘和
  public static long jiechengNum(int n){
      int j=1;
      long sum=0;
      for(int i=1;i<n;i++){
          j=j*i;
//          System.out.println(j);
          sum=sum+j;
      }
      return sum;
  }
  //使用迭代的方式输出n的阶乘
  public static long jiecheng2(int n){
     if(n==1){
         return 1;
     }else{
         return jiecheng2(n-1)*n;
     }
  }
  //使用阶乘对的方法输出1-n的阶乘和
  public static long jiecheng3Num(int n){
      long sum=0;
      if(n==1){
          return 1;
      }
      else{
          for(int i=1;i<=n;i++){
              long j=jiecheng2(i);
              sum=sum+j;
          }
      }
    return sum;
  }
//(3)根据指定文件目录,获取该文件目录(当前目录不涉及子目录)中所有文件夹列表
  public static List<String> getPath(File file){
      List<String> list=null;
      if(file!=null){
          if(file.exists()&&file.isDirectory()){
             list=new ArrayList<String>();
             File []files =file.listFiles();//获取file目录下的抽象路径名不包括本身
             for(File src :files){
                 list.add(src.getPath());//getPath的方法时将抽象路径名转换为路径名字符串
             }
              
          }
      }
      return list;
      
  }
  //(4)根据指定文件目录,只能获取当前目录下不包括子目录,获取所有java源文件(只要文件名)
  public static List<String> getFileJava(String path){
      List<String> list=null;
      if(path!=null){
          File file=new File(path);
          if(file.exists()&&file.isDirectory()){
              list=new ArrayList<String>();
              File [] files=file.listFiles();
              if(files!=null){
                  for(File src:files){
                  if(src.isFile()){
                      String src1=src.getName();
                      if(src1.endsWith("java")){
                          list.add(src1);
                      }
                  }
              }
              }
            
          }
      }
      
      return list;
  }
  //(5)递归扫描任意一个文件夹以及子文件夹中的所有文件列表
  public  static List<String> getAllFileList(List<String> list,File filePath){
      if(filePath!=null){
          if(filePath.exists()&&filePath.isDirectory()){
              File[] files=filePath.listFiles();
              if(files!=null){
                  for(File items:files){
                      if(items.isDirectory()){
                          System.out.println("扫描目录为:"+items.getPath());
                          getAllFileList(list, items);
                      }else if(items.isFile()){
                          list.add(items.getPath());
                      }
                  }
              }
        
          }
      }
      return list;
  }
      
   public static void main(String[] args){
    /*   try {
           createDir("D:/TGP","123.txt");
    } catch (Exception e) {
        e.printStackTrace();
    }
   }*/
     /* long sum=jiecheng(10);
      System.out.println(sum);*/
       /*long j=jiecheng2(3);
       System.out.println(j);*/
//       System.out.println(jiecheng3Num(4));
      /* List<String> list=getPath(new File("D:/"));
           if(list!=null){
              for(String str:list){
                  System.out.println(str);
              }
          }*/
      /* List<String> list=getFileJava("F:/Java/第十章");
       if(list!=null){
           for(String str:list){
               System.out.println(str);
           }
       }*/
       List<String> Lt=new ArrayList<String>();
       List<String> list=getAllFileList(Lt,new File("F:/Java"));
       if(list!=null){
           for(String  ll:Lt){
               System.out.println(ll);
           }
       }
   }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值