File类的使用及匿名内部类的简单使用
来源:互联网 发布:知乎市场营销活动策划 编辑:程序博客网 时间:2024/04/29 19:39
首先我们还是先看File类的api文档
我们看到可以用Fiile的方法createNewFile();创建一个文件,前面说过了,有构造方法要使用就要new一个,这样,一个叫names.txt的文件就创建完成了,刷新就可以看到了
public static void test1() {File file = new File("names.txt");try {file.createNewFile();} catch (IOException e) {e.printStackTrace();}}
接下来用renameTo();来改变一个文件的名字,这样,我们之前创建的names.txt就改名为names2.txt
public static void test2() {File file = new File("names.txt");file.renameTo(new File("names2.txt"));}然后我们还可以用delete();来删除一个文件
public static void test3() {File file = new File("names2.txt");file.delete();}
我们还可以用canExecute,canWrite,canRead方法来查看文件是否有执行,写入权限和读取权限
public static void test4() {File file = new File("names2.txt");System.out.println("执行权限:"+file.canExecute());System.out.println("编辑权限:"+file.canWrite());System.out.println("读取权限:"+file.canRead());}我们还可以用setExecutable();setWritable();setReadable();(括号里面加一个布尔类型的参数true或false)来赋予文件权限
public static void test5() {File file = new File("names2.txt"); file.setExecutable(true); file.setWritable(false); file.setReadable(false);System.out.println("执行权限:"+file.canExecute());System.out.println("编辑权限:"+file.canWrite());System.out.println("读取权限:"+file.canRead());}
我们还可以使用mkdir();来创建一个文件夹,然后与createNewFile ();创建一个文件连用
public static void test6() {File file = new File("names");file.mkdir();File file2 = new File("names/a.txt");try {file2.createNewFile();} catch (IOException e) {e.printStackTrace();}}
然后我们可以用listFiles();来查看文件夹下面的文件名及文件权限,使用for循环把文件读出
public static void test7() {File file = new File("name");File[] fileArray = file.listFiles();for (File f:fileArray) {System.out.println("文件名:"+f.getName()+"执行权限:"+f.canExecute()+"写入权限:"+f.canWrite()+"读取权限"+f.canWrite());}}
然后我们可以通过加多一个if判断语句及使用endsWith方法来获取我们需要的关键字的文件,下面我们来获取名字带有txt的文件
public static void test11() {File file = new File("names");File[] fileArray = file.listFiles();for (File f:fileArray) {if (f.getName().endsWith("txt")){System.out.println("文件名:"+f.getName()+"执行权限:"+f.canExecute()+"写入权限:"+f.canWrite()+"读取权限"+f.canWrite());}}}然后我们查阅FileFilter类
发现FileFilter是一个接口,还有一些使用方法,接下来我们使用匿名内部类,如果平时我们要使用一个类的方法时需要新建一个类,而匿名内部类就不用再去创建一个新类了,即在一个类里面直接new一个类,然后就可以直接调用这个new类的方法,我们看api可以看到可以使用accept方法,在()传入一个参数,然后我们写一个for循环,输出我们需要搜索的带有关键字的文件
public static void test13() {File file = new File("name");String[] fileNameArray = file.list(new FilenameFilter() {@Overridepublic boolean accept(File file,String name) {return name.endsWith("png");}});for(String fileName:fileNameArray){System.out.println(fileName);}}
0 0
- File类的使用及匿名内部类的简单使用
- 匿名内部类的简单使用
- 内部类及匿名内部类的使用实例
- 内部类的编码及使用,包括成员内部类,局部内部类,匿名内部类
- 内部类、匿名内部类的使用
- 匿名内部类的使用
- 匿名内部类的使用
- 匿名内部类的使用
- 匿名内部类的使用
- 匿名内部类的使用
- 匿名内部类的使用
- 探究Java File类中list()、listFiles()的使用及区别,认识和使用匿名内部类
- java 内部类、匿名内部类、嵌套类的使用
- Android里面的匿名类与匿名内部类使用
- Android里面的匿名类与匿名内部类使用
- Android里面的匿名类与匿名内部类使用
- Android里面的匿名类与匿名内部类使用
- Android里面的匿名类与匿名内部类使用
- 字符串
- C# 网络API接口使用
- FastDFS问题汇总
- 剑指offer-面试题39 : 二叉树的深度
- poj-3255-Roadblocks (求到源点的次短路,Dijkstra改进)
- File类的使用及匿名内部类的简单使用
- SQL分类
- matlab在DSP中的应用(四)---时域抽样与信号的重建
- 剑指offer-面试题39 : 二叉树的深度
- 2.1通用寄存器
- 决策树之剪枝
- 序列
- 泛型
- JS DOM 中重要的三点总结