File bb = new File("D:\\myTemp\\xml");
Map temp = new TreeMap();
File[] files = bb.listFiles();
for (int i = 0; i < files.length; i++) {
temp.put(new Date(files[i].lastModified()), files[i]);
}
File[] files2 = (File[]) temp.values().toArray(new File[0]);
for (int i = 0; i < files2.length; i++) {
System.out.println(files2[i]);
}我大概写了一下试试好像是对的,你再测测看
Map temp = new TreeMap();
File[] files = bb.listFiles();
for (int i = 0; i < files.length; i++) {
temp.put(new Date(files[i].lastModified()), files[i]);
}
File[] files2 = (File[]) temp.values().toArray(new File[0]);
for (int i = 0; i < files2.length; i++) {
System.out.println(files2[i]);
}我大概写了一下试试好像是对的,你再测测看
解决方案 »
- 求助!!谁有jive项目源码??
- 一个简单的工程做好之后怎样部署在服务器上
- eclipse3.5如何安装apache CXF插件
- MYECLIPSE 通过xfire 向导生成客户端 时碰到Array类型转换错误
- JSP框架重载
- (分享,可能实现思路简单了点)WEB应用中的进度条实现
- jdk 中文文档(或api)
- 请问如何获取xalan java 中函数代码?
- 求职java软件开发,帮忙up有分
- JPA, JSF and EJB in Java EE7 Applications 案例
- 怎么将带struts标签的JSP页面转为一般JSP页面
- 关于如何在jbuilder+tomcat环境下配置数据源的问题??
一般在定義類時﹐都內置了比較功能﹐比如說按照自然排序法則對一個數組的元素排序﹗但是這些方法並不能滿足我們的要求﹐所以我們要自己根據排序要求﹐創建一個新的對象﹐這個對象必須實現Comparator接口﹐然後將該對象作為sort的第二個參數。
依上所述﹐我需要實現的是對數組裡的文件對象依據最後修改日期排序﹗因此我們要定義一個類﹐來完成這個功能﹗以下是源代碼﹕
package Funove.DocAdmin;import java.io.File;
import java.util.Comparator;public class MyFileComparator implements Comparator
{
private boolean case_sensitive;
public MyFileComparator()
{
this(false);
} public MyFileComparator(boolean is_case_sensitive)
{
case_sensitive = is_case_sensitive;
} private int compareTimes(File f1, File f2)
{
long time1 = f1.lastModified();
long time2 = f2.lastModified();
if (time1 > time2)
{
return -1;
}
if (time1 < time2)
{
return 1;
}
return 0;
} public int compare(Object o1, Object o2)
{
if( o1 == null || o2 == null )
throw new ClassCastException("Null parameter");
if(!(o1 instanceof File) || !(o2 instanceof File) )
throw new ClassCastException("Parameters are not files");
File f1 = (File)o1;
File f2 = (File)o2;
return compareTimes(f1, f2); }
public boolean equals(Object o)
{
return getClass()== o.getClass();
}
public boolean isCaseSensitive()
{
return case_sensitive;
}
public void setCaseSensitive(boolean is_case_sensitive)
{
case_sensitive = is_case_sensitive;
}
}
部份代碼參考了sun網站的實例﹗
當然你也可以根據需要修改為你自己想要的效果﹗