Das Verwendungsbeispiel lautet wie folgt: Verwenden Sie JAVA, um Sort auszuführen
1. Geben Sie den Dateipfad ein, den Sie sortieren möchten. Das Beispiel besteht darin, die Dateien unter H:/ und die Dateien unter allen Unterordnern zu sortieren.
2. Geben Sie die neueste Größe ein, die sortiert und angezeigt werden soll. Das Beispiel besteht darin, Dateien mit einer Größe von mehr als 10 MB zu sortieren.
3. Sortieren Sie von groß nach klein und drücken Sie
Dateipfad/Dateiname ------- Größe KB -------- Angezeigtes Erstellungsdatum (JJJJMMTT)
Format für die Anzeige.
Auf diese Weise können Sie zu große Dateien löschen und Speicherplatz freigeben.
Laufendes Beispiel: Laufwerk H verweist auf die Speicherkarte meines Telefons
Kopieren Sie den Codecode wie folgt:
D:/hjbsSorft/work/20140207/SortSize/bin>java com.he.jinbin.Sort
Geben Sie die Adresse der zu sortierenden Datei ein: H:/
Geben Sie die Dateigröße ein, die sortiert werden soll (Einheit M): 10
Läuft, bitte warten...
Die Dateien sind vom größten zum kleinsten sortiert wie:
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
Kopieren Sie den Codecode wie folgt:
Paket com.he.jinbin;
import java.util.Date;
/**
* Wird zum Sortieren logischer Entitätsklassen verwendet
*/
Die öffentliche Klasse FileItem implementiert Comparable {
privater String fileName;
private lange Größe;
privateDatecreatTime;
public FileItem(String fileName, long size, Date creatDate) {
// TODO Automatisch generierter Konstruktor-Stub
this.fileName = fileName;
this.size = Größe;
this.creatTime = creatDate;
}
öffentlicher String getFileName() {
Dateiname zurückgeben;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public long getSize() {
Rückgabegröße;
}
public void setSize(long size) {
this.size = Größe;
}
öffentliches Datum getCreatTime() {
returncreatTime;
}
public void setCreatTime(Date creatTime) {
this.creatTime = creatTime;
}
@Override
public int CompareTo(Object o) {
if (this.size > ((FileItem) o).getSize())
Rückgabe 1;
return -1;
}
}
Kopieren Sie den Codecode wie folgt:
Paket com.he.jinbin;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
java.io.File importieren;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
java.util.Collections importieren;
import java.util.Date;
java.util.List importieren;
/**
* Hauptklasse, die für die Sortierlogik verwendet wird
*/
öffentliche Klasse Sortieren {
public static List<FileItem> fileItems = new ArrayList<FileItem>();
öffentliches statisches FileItem maxFileItem;
public final static long M_1 = 1024 * 1024;
public static long temp = M_1; // Dateien, die standardmäßig größer als 1 MB sind
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);
} anders {
if (file.length() > temp) {
fileItems.add(new FileItem(file.getPath(), file.length(),
neues Datum(file.lastModified())));
}
}
}
}
public static void main(String[] args) löst eine IOException {
String filePath = null;
System.out.print("Geben Sie die Adresse der zu sortierenden Datei ein:");
BufferedReader inRd = new BufferedReader(new InputStreamReader(
System.in));
filePath = inRd.readLine();
System.out.print("Geben Sie die zu sortierende Dateigröße ein (Einheit M):");
inRd = new BufferedReader(new InputStreamReader(System.in));
temp = Long.parseLong(inRd.readLine())*M_1;
inRd.close();
System.out.println("Wird ausgeführt, bitte warten...");
Datei file = new File(filePath);
addFileItem(file);
SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
Collections.sort(fileItems);
System.out.println("Dateien vom größten zum kleinsten sortieren:");
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()));
}
}
}