 悬赏:1 学分
悬赏:1 学分                        
                    		
                                                                            	
                        
                        
                    



import java.io.File;
import java.util.Scanner;
import java.text.DecimalFormat;
public class Hannoutadejief {
 static void Sm(File[] xxx, File xxxx) {
  for (int i = 0; i < xxx.length; i++) {
   if (xxx[i].isDirectory()) {
    File nihao = new File(xxxx.getName() + File.separator + xxx[i].getName());
    Sm(xxx[i].listFiles(), nihao);
   } else if (xxx[i].isFile()) {
    System.out.println(
      "这是" +new  DecimalFormat("0.00").format( (double) xxx[i].length() / (double) 1048576) + "MB文件呀:" + xxx[i].getAbsolutePath());
   }
  }
 }
 public static void main(String[] args) {
  System.out.println("请输入要扫描的夹子路径");
  Scanner smq = new Scanner(System.in);
  String wjlj = smq.next();
  String zzbd = "[C-G]:\\\\(\\W+\\\\)*";// 判断路径格式的正则表达式好像有问题求大佬看看
  bb: while (true) {
   if ((wjlj.matches(zzbd))) { // 判断是否为文件路径格式,这里的判断好像有问题我已把运算符“!”去掉
    System.out.println("你输了什么鬼,请重输路径或结束");
    wjlj = smq.next().toString();
} else if (wjlj.indexOf("结束") != -1) {
    System.out.println("byebye你嘞");
    smq.close();
   } else {
    File a = new File(wjlj);
    if (!(a.isDirectory() && a.exists())) { // 判断是否为文件夹且文件是否存在
     System.out.println("你输了什么鬼----空的夹子,byebye你嘞");
     break bb;
    } else {
     Sm(a.listFiles(), a);
    }
   }
  }
 }
}
//主要问题运行快结束时总是发生空针针异常其他盘试是过了C盘出现一样问题,D盘正常
//扫描代码改自书本上文件复制,这是我第一个自己认真写的代码,请老师或大佬详解谢谢

 
	
                                                 VIP会员
VIP会员 购物车
购物车

 私信
                         私信 
                     
					 
					 
					 
					 
					 发表新帖
发表新帖 立即签到
立即签到 
        		  
        		 
         		 关注
关注
                  回复
 回复 支持(
                	支持( 反对(
                    反对( 
                    

 
               			  
                







 
                     
                     
					 
						 
						 
						 
						