您的位置:首页 > 其它

排序文件文件按文件名、修改时间、文件大小进行排序

2013-04-25 20:12 363 查看
这两天笔者几篇文章介绍了改排序文件的文章. 关联文章的地址

1. 按文件名排序,中文名按拼音首字母,即A-Z:

/**
* 文件按文件名排序(从A到Z)
*/
private static class CompratorByFileName implements Comparator<File>{

@Override
public int compare(File lhs,
File rhs) {
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);
return cmp.compare(lhs.name , rhs.name);
}

@Override
public boolean equals(Object o) {
return true;
}

}


2.按文件改修时光排序,从旧到新:

/**
* 按 文件改修时光排序(从旧到新)
*
*/
private static class CompratorByFileTime implements
Comparator<File> {
@Override
public int compare(File file1,
File file2) {
int diff = 0;
try {
diff = file1._rev.compareTo(file2._rev);
} catch (NullPointerException e) {
diff = 1;
}
if (diff > 0) {
return 1;
} else if (diff == 0) {
return 0;
} else {
return -1;
}
}

@Override
public boolean equals(Object o) {
return true;
}

}

每日一道理

闷热的天,蝉儿耐不住寂寞地不停在鸣叫,我孤单一人,寂静的身旁没有一个知音,想疯狂地听摇滚乐,听歇斯底里的歌声,那只为逃避无人的世界里那浓烈的孤单气息。一个人是清冷,两个人便是精彩,于是,莫名的冲动让我格外想念旧日的好友,怀念过去的日子,尽管不够现实的遐想追回不了曾经一切,但却希望思绪可以飞扬于闭上双目后的世界中,印有微笑,印有舞动的身姿,翩翩起舞……

3.按文件大小排序,从小到大:

/**
* 按文件大小排序(从小到大)
*/
private static class CompratorByFileSize implements Comparator<File>{

@Override
public int compare(File lhs,
File rhs) {
if (lhs._size > rhs._size) {
return 1;
} else if (lhs._size == rhs._size) {
return 0;
} else {
return -1;
}
}

@Override
public boolean equals(Object o) {
return true;
}
}


最后对文件列表fileList :

Collections.sort(fileList, new CompratorByFilexxxx());


列表的倒序:

Collections.reverse(fileList);


文章结束给大家分享下程序员的一些笑话语录:

祝大家在以后的日子里. 男生象Oracle般健壮; 女生象win7般漂亮; 桃花运象IE中毒般频繁; 钱包如Gmail容量般壮大, 升职速度赶上微软打补丁 , 追女朋友像木马一样猖獗, 生活像重装电脑后一样幸福, 写程序敲代码和聊天一样有**。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐