对于输入输出的理解:
输入输出,以程序为参考点,外部数据进入程序,通过输入流完成。程序将数据给外部设备,通过输出流完成。
文件Io的操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
//获取文件 File file= new File( "d:/a.txt" ); file.getName()--String //文件名 file.getPath()--String //路径 file.getAbsolutePath()--String //全路径 file.getParent()--String //所在文件夹 file.exists()--Boolean //是否存在 是true否false file.isFile()--Boolean //是否是文件 file.isDirectory()--Boolean //是目录吗 file.isAbsolute()--Boolean是全路径吗 file.canRead()--Boolean //可读? file.canWrite()--Boolean //可写? file.isHidden()--Boolean //是否隐藏的? file.length()-- long //大小 System.out.println( new Date(file.lastModified())); //最后修改日期 返回:Tue Feb 07 11 : 15 : 09 CST 2017 |
创建删除文件:
1
2
3
|
file.createNewFile()--Boolean; //直接创建不会覆盖原来的文件 file.delete()--Boolean; //删除文件 |
迭代输出文件下所有的文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
public class PrintFiles { String str= "" ; public void Get(File dir){ System.out.println(str+dir.getName()); str+= " | " ; print(dir,str); } public void print(File dir,String str){ File[] files=dir.listFiles(); for (File file :files) { if (file.isFile()) { System.out.println(str + file.getName()); } if (file.isDirectory()){ Get(file); } } } public static void main(String[] args) { PrintFiles p= new PrintFiles(); File file= new File( "C:\\Users\\xuezhendong\\Desktop\\新建文件夹 (2)" ); p.Get(file); } } |
查找特定文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
File dir = new File( "D:" ); File[] files=dir.listFiles( new FileFilter() { //找特定的文件 @Override public boolean accept(File pathname) { return pathname.getName().endsWith( "txt" );endwith表示后缀 } }); for (File file : files) { System.out.println(file); } File[] files=dir.listFiles( new FilenameFilter() { @Override public boolean accept(File dir, String name) { //dir文件所在的路径 //name文件名 return !name.endsWith( "a" ); } }); |
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://www.cnblogs.com/neu-student/p/6374932.html