A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. /**
  2. * 从键盘接受一个字符串,这个字符串是一个文件目录.
  3. * 将该目录中所有的文件打印在控制台上.
  4. *         思路:
  5. *                 1.从键盘录入,得到一个字符串,
  6. *                 2.通过该字符串,创建一个文件夹,
  7. *                 3.将该文件夹进行遍历,如果还是一个文件夹,那么就进行递归,
  8. * 否则,就将文件名称打印在控制台.
  9. *
  10. * 总结:
  11. *                 1.字符串和File之间如何转换,我们创建一个文件,都是要指定一个字符串的路径.
  12. *                 2.对于File无非就是两种情况,一种是存在,一种不存在.对于存在还有两种情况:
  13. * 一种是文件夹,一种就是文件.
  14. *                 3.对于文件夹,我们需要通过递归再进行遍历,而对于文件,我们就可以直接操作了.
  15. * 思考:
  16. *                 操作文件夹之类的,要想到递归的运用.
  17. * */
  18. public class Demo32 {
  19.         public static void main(String[] args) {
  20.                 SystemInFileName();
  21.         }

  22.         public static void SystemInFileName() {
  23.                 Scanner s = new Scanner(System.in);
  24.                 while(true)
  25.                 {
  26.                         String str = s.nextLine();
  27.                         if(str.equals("over"))
  28.                         {
  29.                                 System.out.println("结束!");
  30.                                 break;
  31.                         }
  32.                         else
  33.                         {
  34.                                 File fi = new File(str);
  35.                                 if(!fi.exists() && !fi.isDirectory())
  36.                                 {
  37.                                         System.out.println("请输入正确的路径文件夹路径");
  38.                                 }
  39.                                 else
  40.                                 {
  41.                                         ListFile(fi);
  42.                                 }
  43.                         }               
  44.                 }
  45.         }

  46.         public static void ListFile(File fi) {
  47.                 File[] ff = fi.listFiles();
  48.                 for(File f : ff)
  49.                 {
  50.                         if(f.isDirectory())
  51.                         {
  52.                                 ListFile(f);
  53.                         }
  54.                         else
  55.                         {
  56.                                 System.out.println(f.getName());
  57.                         }
  58.                 }
  59.         }
  60. }
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马