欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java清除u盘内存卡里的垃圾文件示例

程序员文章站 2024-02-21 23:20:58
使用例子如下,用java 运行sort 1, 输入你要排序的文件路径 , 如 例子是对h:\下的文件和它所有子文件夹下的文件进行排序 2, 输入需要进行排序显示的最新大...

使用例子如下,用java 运行sort

1, 输入你要排序的文件路径 , 如 例子是对h:\下的文件和它所有子文件夹下的文件进行排序

2, 输入需要进行排序显示的最新大小,如 例子是对10m 大小 以上的文件进行排序

3,从大到小排序后按

文件路径\文件名-------大小 kb--------创建日期进行显示(yyyymmdd)

格式进行显示,。

这样你就可以把太大的文件删除了,清理出空间

运行例子:h盘指向我的手机内存卡

复制代码 代码如下:

d:\hjbssorft\work\20140207\sortsize\bin>java com.he.jinbin.sort
输入需要排序文件地址:h:\
输入需要排序文件大小(单位m):10
运行中,请稍等...
从大到小文件排序为:
h:\.android_secure\com.sg.android.fish-1.asec-------36224000 kb--------20130525
h:\baidumap\vmp\h\quanguogailue.dat-------27616013 kb--------20130512
h:\download\redgame_android_2017-2013-11-06_18-54-27-ci-20.apk-------26563096 kb--------20131111
h:\ugame\ugamesdk\downloads\6f9757f4442dd99fc89fa387c80405d2.apk-------26305964kb--------20131025
h:\download\com.tencent.mobileqq_60.apk-------25417880 kb--------20130714
h:\android\data\com.android.gallery3d\cache\imgcache.0-------22070789 kb--------20140210

复制代码 代码如下:

package com.he.jinbin;

import java.util.date;
/**
 * 用于排序逻辑实体类
 */
public class fileitem implements comparable {
 private string filename;
 private long size;
 private date creattime;

 public fileitem(string filename, long size, date creadate) {
  // todo auto-generated constructor stub
  this.filename = filename;
  this.size = size;
  this.creattime = creadate;
 }

 public string getfilename() {
  return filename;
 }

 public void setfilename(string filename) {
  this.filename = filename;
 }

 public long getsize() {
  return size;
 }

 public void setsize(long size) {
  this.size = size;
 }

 public date getcreattime() {
  return creattime;
 }

 public void setcreattime(date creattime) {
  this.creattime = creattime;
 }

 @override
 public int compareto(object o) {
  if (this.size > ((fileitem) o).getsize())
   return 1;
  return -1;
 }

}

复制代码 代码如下:

package com.he.jinbin;

import java.io.bufferedinputstream;
import java.io.bufferedreader;
import java.io.file;
import java.io.ioexception;
import java.io.inputstream;
import java.io.inputstreamreader;
import java.text.simpledateformat;
import java.util.arraylist;
import java.util.collections;
import java.util.date;
import java.util.list;
/**
 * 用于排序逻辑主类
 */
public class sort {
 public static list<fileitem> fileitems = new arraylist<fileitem>();
 public static fileitem maxfileitem;
 public final static long m_1 = 1024 * 1024;
 public static long temp = m_1; // 默认大于1m的文件

 public static void addfileitem(file file) {
  file[] filelist = file.listfiles();
  for (int i = 0; i < filelist.length; i++) {
   file = filelist[i];
   if (file.isdirectory()) {
    addfileitem(file);
   } else {
    if (file.length() > temp) {
     fileitems.add(new fileitem(file.getpath(), file.length(),
       new date(file.lastmodified())));
    }

   }
  }

 }

 public static void main(string[] args) throws ioexception {
  string filepath = null;
  system.out.print("输入需要排序文件地址:");
  bufferedreader inrd = new bufferedreader(new inputstreamreader(
    system.in));
  filepath = inrd.readline();
  system.out.print("输入需要排序文件大小(单位m):");
  inrd = new bufferedreader(new inputstreamreader(system.in));
  temp = long.parselong(inrd.readline())*m_1;
  inrd.close();
  system.out.println("运行中,请稍等...");
  file file = new file(filepath);
  addfileitem(file);
  simpledateformat fmt = new simpledateformat("yyyymmdd");
  collections.sort(fileitems);
  system.out.println("从大到小文件排序为:");
  for (int i = fileitems.size() - 1; i >= 0; i--) {
   fileitem item = fileitems.get(i);
   system.out.println(item.getfilename() + "-------" + item.getsize()
     + " kb" + "--------" + fmt.format(item.getcreattime()));
  }

 }
}