码迷,mamicode.com
首页 > 编程语言 > 详细

黑马程序员——java学习13(毕20--21总结)——IO

时间:2015-08-10 01:39:46      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:

1、File

1.1、增删判获

  1 package learn2;
  2 /*File类的常见方法:
  3  * 1、创建
  4  *     boolean createNewFile();//在指定位置创建如果,如果该文件已存在,则不创建,返回false;
  5  *                                     输出流会覆盖
  6  *     boolean mkdir();//创建文件夹
  7  *             mkdirs();//创建多级文件夹
  8  * 
  9  * 2、删除
 10  *     boolean delete();//删除失败,返回 false
 11  *     void deleteOnExit();//在程序退出时删除
 12  * 3、判断
 13  *     boolean exists();//文件是否存在
 14  *     isFile();
 15  *     isDirectory();
 16  *     isHidden();
 17  *     isAbsolute();测试此抽象路径名是否是绝对路径,即使不存在也可以判断
 18  *     
 19  * 4、获取信息
 20  *     getName();
 21  *     getPath();
 22  *     getParent();
 23  * 
 24  *     getAbsolutePath();
 25  *     long LastModify();
 26  *     long length();
 27  * 
 28  * */
 29 import java.io.File;
 30 import java.io.IOException;
 31 
 32 public class FileDemo {
 33     public static void main(String[] args) throws IOException{
 34         method_4();
 35     }
 36     public static void method_5()throws IOException
 37     {
 38         File f1 = new File("c:\\test.java");
 39         File f2 = new File("c:\\hahaha.java");
 40         sop("rename"+f1.renameTo(f2));
 41         
 42     }
 43     public static void method_4()throws IOException
 44     {
 45         File f = new File("c:\\abc\\a.txt");
 46         sop("path:"+f.getPath());//你封装的是什么路径,返回什么
 47         sop("abspath:"+f.getAbsolutePath());//无论封装的是什么。都返回其所属目录变绝对路径
 48         sop("parent:"+f.getParent());//该方法返回的是绝对路径中的文件父目录,如果获取相对路径,返回空
 49                                         //如果相对路径中有上一层目录。该目录则是返回结果
 50     }
 51     public static void method_3()throws IOException
 52     {
 53         File f = new File("file.txt");
 54         f.createNewFile();
 55         //记住,在判断文件对象是否是文件或者目录时,必须要先判断该文件对象封装的内容是否存在
 56         //通过exists判断
 57         sop("dir:"+f.isDirectory());
 58         sop("file:"+f.isFile());
 59         sop(f.isAbsolute());
 60     }
 61     public static void method_2()throws IOException
 62     {
 63         File f = new File("file.txt");
 64 //        sop("execute:"+f.canExecute());
 65         //创建文件夹
 66         File dir = new File("abc");
 67         //只能创建一级目录
 68 //        sop("mkdir:"+dir.mkdir());
 69         sop("mkdir:"+dir.mkdirs());
 70     }
 71     public static void method_1()throws IOException
 72     {
 73         File f= new File("file.txt");
 74         f.deleteOnExit();//在程序退出时删除
 75 //        sop("create:"+f.createNewFile());
 76         sop("delete:"+f.delete());
 77     }
 78     
 79     
 80     
 81     public static void consMethod()
 82     {
 83         //将a.txt封装成file对象,可以将已有的和未出现的文件或者文件夹封装成对象
 84         File f1= new File("a.txt");
 85         //
 86         File f2= new File("c:\\abc","b.txt");
 87         
 88         File d = new File("c:\\abc");
 89         File f3= new File(d,"c.txt");
 90         
 91         sop("f1:"+f1);
 92         sop("f2:"+f2);
 93         sop("f3:"+f3);
 94         
 95         File f4 = new File("c:"+File.separator+"abc\\");
 96         
 97     }
 98     public static void sop(Object obj)
 99     {
100         System.out.println(obj);
101     }
102 }

 

1.2、文件列表

调用list方法的对象,必须是真实存在的目录

File[] listFiles(FilenameFilter filter)根据文件名过滤器过滤后得到的文件名数组

 1 package learn2;
 2 
 3 import java.io.File;
 4 import java.io.FilenameFilter;
 5 
 6 public class FileDemo2 {
 7     public static void main(String[] args) {
 8         File dir = new File("c:\\");
 9         File[] files = dir.listFiles();
10         for(File f:files)
11         {
12             System.out.println(f.getName()+"::"+f.length());
13         }
14     }
15     public static void listDemo_2()
16     {
17         File dir = new File("c:\\");
18         //内部类
19         String[] arr = dir.list(new FilenameFilter()
20         {
21             public boolean accept(File dir, String name)
22             {    
23 //                System.out.println("dir:"+dir);
24 //                System.out.println("name:"+name);
25 //                if(name.endsWith(".bmp"))
26 //                    return true;
27 //                else
28 //                return false;
29                 return name.endsWith(".bmp");
30             }
31         });
32         System.out.println("leng:"+arr.length);
33         for(String name:arr)
34         {
35             System.out.println(name);
36         }
37     }
38     public static void listDemo()
39     {
40         File f = new File("c:\\");
41         String[] names = f.list();//包含隐藏文件,调用list的必须封装了一个真实存在的目录
42         for(String name :names)
43         {
44             System.out.println(name);
45         }
46     }
47     private static void listRootDemo() {
48         // TODO Auto-generated method stub
49         File[] files= File.listRoots();
50         for(File f:files)
51         {
52             System.out.println(f);
53         }
54         
55     }
56 }

运行结果为对应目录下的文件名数组

 

1.3、

黑马程序员——java学习13(毕20--21总结)——IO

标签:

原文地址:http://www.cnblogs.com/sunxlfree1206/p/4716800.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!