📄 myresult.java
字号:
/**
*
*/
package cn.edu.nju.software.ruse;
import java.io.File;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import cn.edu.nju.software.ruse.Tester.Result;
/**
* @author spring
*
*/
public class MyResult {
private HashSet<File> result;
private String query;
private static int start = 0;
public MyResult(String query, HashSet<File> result) {
this.query = query;
this.result = result;
}
public void printResult() {
//System.err.println("@MyResult starting to print the result!");
System.out.println("Search Result:");
System.out.println(query + ":");
File f;
DateFormat df = DateFormat.getDateFormat();
String dateString;
if (result.isEmpty()) {
System.out.println("Can't not find any files!");
} else {
Iterator<File> it = result.iterator();
while (it.hasNext()) {
f = (File) it.next();
dateString = df.format(f.lastModified());
System.out.println("->" + f.getName() + "---" + "ModTime: "
+ dateString + "---" + "FileSize: " + f.length());
}
}
}
public List<Result> getResult() {
//System.err.println("@MyResult starting to get the result!");
Iterator<File> it = result.iterator();
File f;
DateFormat df = DateFormat.getDateFormat();
Result r;
List<Result> resultNoOrder = new ArrayList<Result>();
while (it.hasNext()) {
f = it.next();
r = new Result();
r.fileName = f.getName();
r.fileSize = (int) f.length();
r.modTime = df.format(f.lastModified());
resultNoOrder.add(r);
}
return resultNoOrder;
}
public List<Result> getResultByTime() {
//System.err.println("@MyResult starting to get the result order by TIME!");
Iterator<File> it = result.iterator();
File f;
DateFormat df = DateFormat.getDateFormat();
Result r;
List<Result> resultByTime = new ArrayList<Result>();
while (it.hasNext()) {
f = it.next();
r = new Result();
r.fileName = f.getName();
r.fileSize = (int) f.length();
r.modTime = df.format(f.lastModified());
if (resultByTime.size() == 0) {
resultByTime.add(r);
} else {
for (int i = 0; i < resultByTime.size() + 1; i++) {
if(i == resultByTime.size()) {
resultByTime.add(i, r);
break;
}
if(r.modTime.compareTo(resultByTime.get(i).modTime) == 1) {
resultByTime.add(i, r);
break;
}
}
}
}
return resultByTime;
}
public List<Result> getResultBySize() {
//System.err.println("@MyResult starting to get the result order by SIZE!");
Iterator<File> it = result.iterator();
File f;
DateFormat df = DateFormat.getDateFormat();
Result r;
List<Result> resultBySize = new ArrayList<Result>();
while (it.hasNext()) {
f = it.next();
r = new Result();
r.fileName = f.getName();
r.fileSize = (int) f.length();
r.modTime = df.format(f.lastModified());
if (resultBySize.size() == 0) {
resultBySize.add(r);
} else {
for (int i = 0; i < resultBySize.size() + 1; i++) {
if(i == resultBySize.size()) {
resultBySize.add(i, r);
break;
}
if(r.fileSize > resultBySize.get(i).fileSize) {
resultBySize.add(i, r);
break;
}
}
}
}
return resultBySize;
}
public List<Result> getResultByName() {
//System.err.println("@MyResult starting to get the result order by NAME!");
Iterator<File> it = result.iterator();
File f;
DateFormat df = DateFormat.getDateFormat();
Result r;
List<Result> resultByName = new ArrayList<Result>();
while (it.hasNext()) {
f = it.next();
r = new Result();
r.fileName = f.getName();
r.fileSize = (int) f.length();
r.modTime = df.format(f.lastModified());
if (resultByName.size() == 0) {
resultByName.add(r);
} else {
for (int i = 0; i < resultByName.size() + 1; i++) {
if(i == resultByName.size()) {
resultByName.add(i, r);
break;
}
if(r.fileName.compareTo(resultByName.get(i).fileName) == -1) {
resultByName.add(i, r);
break;
}
}
}
}
return resultByName;
}
public void printResultByTime() {
//System.err.println("@MyResult starting to print the result order by TIME!");
System.out.println("Search Result:");
System.out.println(query + ":");
List<Result> l = getResultByTime();
Result r;
if (l.isEmpty()) {
System.out.println("Can't not find any files!");
} else {
for(int i = 0;i < l.size();i++) {
r = l.get(i);
System.out.println("->" + r.fileName + "---" + "ModTime: "
+ r.modTime + "---" + "FileSize: " + r.fileSize);
}
}
}
public void printResultBySize() {
//System.err.println("@MyResult starting to print the result order by SIZE!");
System.out.println("Search Result:");
System.out.println(query + ":");
List<Result> l = getResultBySize();
Result r;
if (l.isEmpty()) {
System.out.println("Can't not find any files!");
} else {
for(int i = 0;i < l.size();i++) {
r = l.get(i);
System.out.println("->" + r.fileName + "---" + "ModTime: "
+ r.modTime + "---" + "FileSize: " + r.fileSize);
}
}
}
public void printNext(int num) {
num += start;
int size;
//System.err.println("@MyResult starting to print the result order by NAME!");
List<Result> l = getResultByName();
Result r;
size = l.size();
if(start >= size) {
System.out.println("All the Files have been printed!");
System.out.println("Please Enter \"quit\" to QUIT!");
return;
}
if(num > size) {
num = size;
}
System.out.println("Search Result:");
System.out.println(query + ":");
if(l.isEmpty()) {
System.out.println("Can't not find any files!");
} else {
for(;start < num;start++) {
r = l.get(start);
System.out.println("->" + r.fileName + "---" + "ModTime: "
+ r.modTime + "---" + "FileSize: " + r.fileSize);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -