IO操作-File
2015-11-12 23:12
393 查看
IO学习
学习法则:当子类复写父类方法时,会根据实例化子类的不同,同一方法可以完成不同的功能。File类
File类是在整个java.io包之中唯一一个与文件本身操作有关的类,文件本身操作指的是文件的创建、删除等,但是如果要进行File类操作那么必须设置好要操作的文件或文件夹的路径,使用如下构造方法。构造方法
public File(String pathname),传入完整的路径,WEB开发此方式比较好用
public File(File parent, String child),传入父路径和子路径。
范例:基本的文件操作
创建新的文件public boolean createFile() throws IOException;
删除文件
public boolean delete();
判断文件是否存在
public boolean exists();
public class TestDemo{ public static void main(String[] args) throws Exception { File file = new File("D:\\demo.txt"); if(file.exists()){ file.delete(); } else{ file.createFile(); } }
本程序依然存在如下几个问题:
Java的最大特征是可移植性,分隔符不同,一般在windows开发,最后部署在Linux之中;
public static final String separator
在程序执行完之后文件并不会立刻删除或者是创建,存在有一定的延迟,因为Java程序是通过JVM间接调用系统函数实现的文件操作。
如果在进行文件创建的时候,如果有目录,则需要先创建文件目录之后才可以创建文件。
找到父路径:
public File getParentFile();
创建目录:
public boolean mkdirs();
除了以上的一些文件操作,还有一些取得文件信息的方法。
判断路径是否是文件
public boolean isFile();
判断路径是否是文件夹
public boolean isDirectory();
最后一次修改日期
public long lastModified();
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") .format(new Date(file.lastModified()));
取得文件大小
public long length();
修改文件名称
public boolean renameTo(File dest);
列出目录中的所有文件内容
列出目录内容
public File[] listFiles();
File file = new File("D:" + File.separator + "testjava"); if(file.exists() && file.isDirectory()) { File[] result = file.listFiles(); for(int x = 0; x < result.length; x++) { System.out.println(result[x]); } }
但是此时列出的只是当前目录的文件内容。
范例:列出一个目录之中的所有文件(包括所有子目录的文件)
public static void print(File file) { if(file.exists() && file.isDirectory()) { File[] result = file.listFiles(); if(result != null) { //有些文件我们并没有权限打开 for(int x = 0; x < result.length; x++) { print(result); } } } System.out.println(file); }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统