Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1502675
  • 博文数量: 3500
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 43870
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-03 20:31
文章分类

全部博文(3500)

文章存档

2008年(3500)

我的朋友

分类:

2008-05-04 19:16:07

一起学习
用java读取各种计算机文件系统的文件列表 作者:jackliu email:suntoday@eyou.com 当你安装了jdk,在jdk的类库里,有一个标准的File类,通过该类,可以很方便的实现浏览各种文件系统的功能。 File类: java.lang.Object | --java.io.File File类扩展了Object对象,实现了Serializable, Comparable定义的接口,可以通过File的一个实例对jvm上的文件系统进行各种操作,下面我编写了一个FileViewer类,该类通过Iterator类将一个文件列表实现对列表的迭代操作 FileViewer.java import java.io.File; import java.util.Date; import java.util.Iterator; import java.util.Vector; public class FileViewer{ File myDir; File[] contents; Vector vectorList; Iterator currentFileView; File currentFile; String path; public FileViewer(){ path=new String(""); vectorList=new Vector(); } public FileViewer(String path){ this.path=path; vectorList=new Vector(); } /** * 设置浏览的路径 */ public void setPath(String path){ this.path=path; } /*** * 返回当前目录路径 */ public String getDirectory(){ return myDir.getPath(); } /** * 刷新列表 */ public void refreshList(){ if(this.path.equals("")) path="c:\\"; myDir=new File(path); vectorList.clear(); contents =myDir.listFiles(); //重新装入路径下文件 for(int i=0;i vectorList.add(contents[i]); } currentFileView=vectorList.iterator(); } /** * 移动当前文件集合的指针指到下一个条目 * @return 成功返回true,否则false */ public boolean nextFile(){ while(currentFileView.hasNext()){ currentFile=(File)currentFileView.next(); return true; } return false; } /** * 返回当前指向的文件对象的文件名称 */ public String getFileName(){ return currentFile.getName(); } /** * 返回当前指向的文件对象的文件尺寸 */ public String getFileSize(){ return new Long(currentFile.length()).toString(); } /** * 返回当前指向的文件对象的最后修改日期 */ public String getFileTimeStamp(){ return new Date(currentFile.lastModified()).toString(); } /** * 返回当前指向的文件对象是否是一个文件目录 */ public boolean getFileType(){ return currentFile.isDirectory(); } } 通过setPath()方法设定要浏览的目录(注意如果操作系统为微软操作系统,每个路径分隔符应写成两个斜杠\\),nextFile()方法用来移动列表记录,可以通过getFileName()得到文件或文件夹名称,通过getFileSize()得到文件尺寸,通过getFileTimeStamp()得到文件的最后修改时间,通过getFileType()判断是否是一个文件目录。 编写一个test例子测试这个FileViewer类 test.java import java.io.*; public class test{ public static void main(String[] args){ System.out.println("File List"); FileViewer f=new FileViewer(); f.setPath("d:\\"); f.refreshList(); while(f.nextFile()){ System.out.print(f.getFileName()); if(!f.getFileType()) System.out.print(" " f.getFileSize()); else System.out.print(" "); System.out.print(f.getFileTimeStamp() "\n"); } } } 首先编译FileViewer.java文件,生成FileViewer.class类;再编译test.java运行后,可以显示当前目录下的所有文档.唯一不足就是:不能对当前路径下的文件夹的内容进行显示. 下载本文示例代码


用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表用java读取各种计算机文件系统的文件列表
阅读(126) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~