过滤器实现快速检索资源文件

来源:互联网 发布:linode 端口被拦截 编辑:程序博客网 时间:2024/04/29 17:12

1.过滤器类实现filter接口(根据自己需要)

public class Namefilter implements SmbFilenameFilter {String type;Namefilter(String type) {this.type = type;}@Overridepublic boolean accept(SmbFile arg0, String arg1) throws SmbException {CharSequence s = type.subSequence(0, type.length());return arg1.contains(s);}}
public boolean filter(String type, SmbFile smbFile,int size) { //检索特定资源文件Namefilter myfilter = new Namefilter(type);boolean fag = false;try {SmbFile[] smbFiles = smbFile.listFiles(myfilter);for (int i = 0; i < smbFiles.length; i++) {                    if (smbFiles[i].getContentLength()>size) {fag = true;break;} }} catch (SmbException e) {e.printStackTrace();}return fag;}
public static void main(String[] args) { // 资源检索String ipchar = "10.48.45.248", name = "administrator"; String pass = "zyt@2304";InetAddress ip = null;NtlmPasswordAuthentication auth = null;try {ip = InetAddress.getByName(ipchar);UniAddress myDomain = new UniAddress(ip);auth = new NtlmPasswordAuthentication(ipchar, name, pass); // 先登录验证//SmbSession.logon(myDomain, auth);} catch (UnknownHostException e1) {e1.printStackTrace();}    String url = "smb://127.0.0.1/files/";try {SmbFile sFile = new SmbFile(url, auth);String Name = "reg";int si = 10;filter(Name, sFile,si);} catch (MalformedURLException e) {e.printStackTrace();}}


                                             
0 0
原创粉丝点击