📄 filesorter.java
字号:
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: FileSorter.java
package fileexplorer.views;
import java.io.File;
import java.text.DateFormat;
import java.util.Date;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerSorter;
import org.eclipse.swt.program.Program;
public class FileSorter extends ViewerSorter
{
private FileSorter()
{
dateFormat = DateFormat.getDateTimeInstance(2, 2);
}
public FileSorter(int sortType)
{
dateFormat = DateFormat.getDateTimeInstance(2, 2);
this.sortType = sortType;
}
public int compare(Viewer viewer, Object obj1, Object obj2)
{
File f1 = (File)obj1;
File f2 = (File)obj2;
switch(sortType)
{
case 1: // '\001'
{
String l1 = f1.getName();
String l2 = f2.getName();
return l1.compareTo(l2);
}
case -1:
{
String l1 = f1.getName();
String l2 = f2.getName();
return l2.compareTo(l1);
}
case 2: // '\002'
{
Long s1 = Long.valueOf(f1.length());
Long s2 = Long.valueOf(f2.length());
return s1.compareTo(s2);
}
case -2:
{
Long s1 = Long.valueOf(f1.length());
Long s2 = Long.valueOf(f2.length());
return s2.compareTo(s1);
}
case 3: // '\003'
{
String s1 = getfiletype(f1);
String s2 = getfiletype(f2);
return s1.compareTo(s2);
}
case -3:
{
String s1 = getfiletype(f1);
String s2 = getfiletype(f2);
return s2.compareTo(s1);
}
case 4: // '\004'
{
String s1 = dateFormat.format(new Date(f1.lastModified()));
String s2 = dateFormat.format(new Date(f2.lastModified()));
return s1.compareTo(s2);
}
case -4:
{
String s1 = dateFormat.format(new Date(f1.lastModified()));
String s2 = dateFormat.format(new Date(f2.lastModified()));
return s2.compareTo(s1);
}
case 5: // '\005'
{
String s1 = f1.getAbsolutePath();
String s2 = f2.getAbsolutePath();
return s1.compareTo(s2);
}
case -5:
{
String s1 = f1.getAbsolutePath();
String s2 = f2.getAbsolutePath();
return s2.compareTo(s1);
}
case 0: // '\0'
default:
{
return 0;
}
}
}
public String getfiletype(Object element)
{
File file = (File)element;
if(file.isDirectory())
return "\u6587\u4EF6\u5939";
if(file.isFile())
{
int dotPos = file.getName().lastIndexOf('.');
if(dotPos != -1)
{
String extension = file.getName().substring(dotPos);
Program program = Program.findProgram(extension);
if(program != null)
return program.getName().toString();
else
return extension.toUpperCase();
} else
{
return "Unknown";
}
} else
{
return "";
}
}
public static final int FILENAME = 1;
public static final int FILESIZE = 2;
public static final int FILETYPR = 3;
public static final int FILEDATE = 4;
public static final int FILEPATH = 5;
private DateFormat dateFormat;
private int sortType;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -