利用File自动更新文件
2011-08-31 07:37
323 查看
File类提供了一些方法可以用来操作文件和获得文件的信息.通过File类的方法,可以得到文件或目录的描述,包括名称,所在路径,读写性,长度等,静儿可以进行创建目录,创建临时文件,改变文件名,删除文件,列出一个目录中所有的文件或某个模式相匹配的稳健操作等...
1.构造方法
public File(String pathname):根据parent抽象路径名和child路径名字符串创建一个新File对象.
public File(File parent,String child):通过将制定路径名字符串和child路径名字符串创建一个新File对象.
public File(String parent,String child):根据parent路径名字符串和child路径名字符串创建一个新File对象.
public File(URI uri):通过将指定的File:URI转化为一个抽象路径名来创建一个新的File对象.
2.提供的方法
(1)访问文件对象
public String getName():返回文件对象名,不包括路径名
public String getPath():返回相对路径名,包含文件名
public String getAbsolutePath():返回绝对路径名,包含文件名
public String getParent():返回父文件对象的路径名
public File getParentFile():返回父文件对象
(2)获得文件属性
public long length();返回指定文件的字节长度
public boolean exists():测试指定的文件是否存在
public long lastModified()返回指定文件最后被修改的时间.
(3)文件操作
public boolean renameTo(Filedest)文件重命名
public boolean delete()删除空目录
(4)目录操作
public boolean mkdir():创建指定目录,正常建立时返回true
public String[] list():返回目录中的所有文件名字符串
public File[] listFiles():返回指定目录中的所有文件对象
实例:
1.构造方法
public File(String pathname):根据parent抽象路径名和child路径名字符串创建一个新File对象.
public File(File parent,String child):通过将制定路径名字符串和child路径名字符串创建一个新File对象.
public File(String parent,String child):根据parent路径名字符串和child路径名字符串创建一个新File对象.
public File(URI uri):通过将指定的File:URI转化为一个抽象路径名来创建一个新的File对象.
2.提供的方法
(1)访问文件对象
public String getName():返回文件对象名,不包括路径名
public String getPath():返回相对路径名,包含文件名
public String getAbsolutePath():返回绝对路径名,包含文件名
public String getParent():返回父文件对象的路径名
public File getParentFile():返回父文件对象
(2)获得文件属性
public long length();返回指定文件的字节长度
public boolean exists():测试指定的文件是否存在
public long lastModified()返回指定文件最后被修改的时间.
(3)文件操作
public boolean renameTo(Filedest)文件重命名
public boolean delete()删除空目录
(4)目录操作
public boolean mkdir():创建指定目录,正常建立时返回true
public String[] list():返回目录中的所有文件名字符串
public File[] listFiles():返回指定目录中的所有文件对象
实例:
import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class FileUpdateTest { public static void main(String[] args) throws IOException{ String fname = "source.txt"; String destdir = "backup"; update(fname,destdir); } private static void update(String fname, String destdir) throws IOException { File f1,f2,dest; f1=new File("res",fname); dest = new File("res",destdir); if(f1.exists()){ if(!dest.exists()) dest.mkdir(); f2 = new File(dest,fname); long d1 = f1.lastModified(); long d2 = f2.lastModified(); if((!f2.exists()) || f2.exists() && d1>d2){ copy(f1,f2); } showFileInfo(f1); showFileInfo(dest); }else{ System.out.println(f1.getName()+"file not found"); } } public static void copy(File f1, File f2) throws IOException{ FileInputStream fis = new FileInputStream(f1); FileOutputStream fos = new FileOutputStream(f2); int count,n = 512; byte buffer[] = new byte ; count = fis.read(buffer,0,n); while(count!=-1){ fos.write(buffer,0,count); count = fis.read(buffer,0,n); } System.out.println("复制文件"+f2.getName()+"成功"); fis.close(); fos.close(); } public static void showFileInfo(File f1) { // TODO Auto-generated method stub SimpleDateFormat sdf; sdf = new SimpleDateFormat("yyy 年 MM 月 dd 日 hh 时 mm 分"); if(f1.isFile()){ String filepath = f1.getAbsolutePath(); Date da = new Date(f1.lastModified()); String mat = sdf.format(da); System.out.println("<文件:>\t"+filepath+"\t"+f1.length()+"\t"+mat); } else{ System.out.println("<目录:>\t"+f1.getAbsolutePath()); File[]files = f1.listFiles(); for(int i=0;i<files.length;i++){ showFileInfo(files[i]); } } } }
相关文章推荐
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- C# 利用FTP自动下载xml文件后利用 FileSystemWatcher 监控目录下文件变化并自动更新数据库
- C# 利用FTP自动下载xml文件后利用 FileSystemWatcher 监控目录下文件变化并自动更新数据库
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- 利用gulp,当引入文件改动时,版本号自动更新~
- 在进行更新时注意UpdateFile文件中的内容------运维日志1
- Asp.net(C#)利用File Field多文件上传
- Director的自动更新文件保存目录
- AltiumDesigner中从PCB文件更新SCH文件元件标号--PCB自动标号
- 利用python,shell,crontab实现成绩自动查询和更新邮件提醒
- vb6自动更新和恢复文件的一种方法
- 利用CAsyncMonikerFile下载文件
- 利用 Hadoop FileSystem listStatus 遍历文件目录 实现HDFS操作
- 利用FileWatcher实现文件实时监视
- 利用svn、rsync做代码更新和自动发布的shell
- 利用MyEclipse自动创建PO类、hbm文件(映射文件)、DAO
- 利用NET HUNTER建立一个自动文件下载的网络接入点
- 利用批处理文件自动映射网络驱动器
- 关于js自动获取input file的文件名称
- file表单自动打开默认路径的文件