IO学习笔记(一)
来源:互联网 发布:精通matlab最优化.pdf 编辑:程序博客网 时间:2024/05/20 23:59
File类
File类既能处理文件,也能够处理目录
File file=new File("dir")
列出目录底下所有文件
String[] fileNames=file.list();
如果只需要列出.java类型的文件 则可以建立一个类实现FilenameFilter。
class JavaFilter implements FilenameFilter{public boolean accept(File file){if (file.getName().toLowerCase().endWith(".java")) {return true;}return false;}}然后调用file类带参数的list方法FileTypeFilter filter=new FileTypeFilter();File[] JavaFiles=file.listFiles(filter);
package com.lqf.IO;import java.io.File;import java.io.IOException;import java.util.Arrays;public class DirListTest {public static void main(String[] args){File file=new File("resource");String[] fileNames=file.list();System.out.println(Arrays.toString(fileNames));//新建一个文件类型过滤器的实例,只接受.java文件FileTypeFilter filter=new FileTypeFilter(new String[]{".java"});File[] javaFiles=file.listFiles(filter);for(int i=0;i<javaFiles.length;i++){System.out.println(javaFiles[i].getName());//打印所有文件的文件名}String firstFileName=javaFiles[0].getName();//判断文件是否可读System.out.println(javaFiles[0].canRead()?firstFileName+"可读":firstFileName+"不可读");//判断文件是否可写System.out.println(javaFiles[0].canWrite()?firstFileName+"可写":firstFileName+"不可写");//完整路径System.out.println(firstFileName+"完整路径是"+javaFiles[0].getAbsolutePath());File newDir=new File("newDir");System.out.println(newDir.mkdir()?"创建文件夹newDir成功":"创建文件夹失败");File newFile=new File("newFile.txt");try {System.out.println(newFile.createNewFile()?"创建文件newFile成功":"创建文件newFile失败");} catch (IOException e) {e.printStackTrace();}}}
package com.lqf.IO;import java.io.File;import java.io.FileFilter;<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space: normal;"></span></span>public class FileTypeFilter implements FileFilter {<span style="white-space:pre"></span><span style="white-space:pre"></span>private String[] fileTypes;//指定的文件类型<span style="white-space:pre"></span>public FileTypeFilter(String[] fileTypes) {<span style="white-space:pre"></span>this.fileTypes=fileTypes;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>//如果file的文件扩展名是fileType或者是个文件返回true,否则返回false<span style="white-space:pre"></span>@Override<span style="white-space:pre"></span>public boolean accept(File file) {<span style="white-space:pre"></span><span style="white-space:pre"></span>if (file.isDirectory()) {<span style="white-space:pre"></span>return true;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>for(int i=0;i<fileTypes.length;i++){<span style="white-space:pre"></span>if (file.getName().toLowerCase().endsWith(fileTypes[i])) {<span style="white-space:pre"></span>return true;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>}<span style="white-space:pre"></span>return false;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>//<span style="white-space:pre"></span>public File[] listFiles(FileFilter fileFilter){<span style="white-space:pre"></span>String as[]=list();<span style="white-space:pre"></span>if (as==null) {<span style="white-space:pre"></span>return null;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>ArrayList arrayList=new ArrayList();<span style="white-space:pre"></span>for(int i=0;i<as.length;i++){<span style="white-space:pre"></span>File file=new File(as[i],this);<span style="white-space:pre"></span>if (fileFilter==null||fileFilter.accept(file)) {<span style="white-space:pre"></span>arrayList.add(file);<span style="white-space:pre"></span>}<span style="white-space:pre"></span><span style="white-space:pre"></span>}<span style="white-space:pre"></span>return (File[])(File[])arrayList.toArray(new File[arrayList.size()]);<span style="white-space:pre"></span><span style="white-space:pre"></span>}}
0 0
- IO学习笔记(一)
- IO学习笔记(一)
- java io学习笔记(一)
- IO流的学习笔记(一)
- Java IO 学习笔记(一)
- new IO学习笔记(一)
- Java IO学习笔记一
- PCL学习笔记一:io
- 学习笔记一:java IO
- Java IO学习笔记一
- dojo学习笔记(一)-dojo.io.IO & dojo.io.BrowserIO)
- dojo学习笔记(一)-dojo.io.IO & dojo.io.BrowserIO)
- 黑马程序员--IO流的学习笔记(一)
- 黑马程序员------IO流学习笔记(一)
- 黑马程序员——IO学习笔记(一)
- 黑马程序员--学习笔记(IO流一)
- Java IO学习笔记(一):File类
- 黑马程序员-Java学习笔记之IO流(一)
- java 读取标准输入
- shell特殊用法
- AES,SHA1,DES,RSA,MD5区别
- POJ_1010_STAMPS
- Shell中的函数调用
- IO学习笔记(一)
- 【2016/9】 简单 Docker 入门
- iOS多张图片合成一个视频
- Linux开发必备工具
- zynq学习01 zynq 单独使用PL模块点亮led
- js 中json遍历 添加 修改 类型转换
- mfc 对话框添加菜单
- D-Link路由器固件后门,导致内网域名劫持 20160903
- iOS开发之三级地区选择功能实现