📄 datafilefilter.java
字号:
/*
*@(#)DataFileFilter.java 2.0 2005/05/13
*
*清华大学 精密仪器与机械学系
*范灿升 fancansheng@163.com
*/
package lib;
import javax.swing.filechooser.FileFilter;
import java.io.File;
/**
*这是文件滤镜,打开或保存文件数据时过滤文件用。
*@version 2.0, 2005/05/13
*@author 范灿升
*/
public class DataFileFilter extends FileFilter
{
private String extension;
private String description;
/**
*构造一个文件滤镜类。扩展名在程序内部会被转化成小写。
*@param extension 文件扩展名
*@param description 文件描述
*/
public DataFileFilter(String extension,String description)
{
this.extension=extension.toLowerCase();
this.description=description;
}
/**
*判断一个文件是否为文件滤镜所接受。
*只有当一个文件的扩展名与构造方法中的extension相一致的时候才为滤镜接受。
*@param f 文件类的实例
*@return f的扩展名与extension一致时返回true,否则返回false
*/
public boolean accept(File f)
{
try
{
if(f.isDirectory())
return true;
else if(getExtension(f).intern()==extension.intern())
return true;
else
return false;
}
catch(NullPointerException e)
{
return false;
}
}
/**
*返回文件描述。
*@return 文件的描述
*/
public String getDescription()
{
return description;
}
/**
*获取文件名的扩展名。
*@param f 要获取文件扩展名的文件
*@return 文件f的扩展名,如果f为null则返回null。
*/
public String getExtension(File f)
{
if(f!=null)
{
String name=f.getName();
int last=name.lastIndexOf('.');
if(last>0 && last<name.length()-1)
return name.substring(last+1).toLowerCase();
}
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -