1.过滤器类实现filter接口(根据自己需要)
public class Namefilter implements SmbFilenameFilter {
String type;
Namefilter(String type) {
this.type = type;
}
@Override
public 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(); } }