当前位置: 首页 > 知识库问答 >
问题:

重用JCIFS SMB连接检查各种文件的存在

斜烈
2023-03-14

使用JCIFS可以轻松地检查文件是否存在:

  1. 设置凭据:
import jcifs.smb.*;
NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("domain", "username", "password");
SmbFile file = new SmbFile("smb://server/filepath", auth);
if( file.exists() ) { ... }

共有1个答案

巫马自明
2023-03-14

针对:

新建SmbFile(“smb://server/filepath”,auth);将为每个文件设置一个新连接

在实际尝试对服务器执行某些操作(例如检查存在性)之前,连接不会建立。但是,它使用相同的连接与服务器进行操作对话。SMBTransport类就是处理这个问题的工具。您可以使用wireshark或任何其他监视工具来查看操作是否使用了与服务器相同的连接。

如果您不知道文件的名称,并且使用listfiles(和子目录下降),那么您将从服务器请求更多的数据,例如,项目的每个条目属性(如果它们是否是目录),以及包含数百个甚至数千个条目的目录,这可能相当于在遍历树时需要缓存的大量数据。

 类似资料:
  • 问题内容: 如何使用Javascript检查互联网连接?这样,我可以有一些条件说“在生产过程中使用Google缓存的JQuery版本,在开发过程中使用该版本或本地版本,具体取决于Internet连接”。 问题答案: 针对您的特定情况的最佳选择可能是: 在您的结束标记之前: 鉴于您的问题集中在jQuery上,这可能是最简单的方法。 如果您想要一个更强大的解决方案,可以尝试: 阅读有关W3C在脱机We

  • 本文向大家介绍Java连接各种数据库的方法,包括了Java连接各种数据库的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java连接各种数据库的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的java程序设计有所帮助。

  • 我希望代码检查互联网连接,直到连接可用。如果互联网断开,我不希望执行停止。 关于堆栈溢出,很少有检查internet连接的解决方案,但是如果我使用这些解决方案,一段时间后我会得到堆栈溢出错误。 我从以下函数调用该方法: MessagingException:没有路由到主机:Connect;嵌套异常为:java.net.norouteToHostException:没有到主机的路由:连接在com.s

  • 问题内容: 尝试检查我要读取的文件是否存在。 问题答案: 这是另一种方法: 包装的用途和功能: p_DirName in varchar2, – schema object name p_FileName in varchar2 ) return number is l_file_loc bfile; begin l_file_loc := bfilename(upper(p_DirName),

  • 主要内容:检查连接在本章中,我们将演示如何处理Firebase连接状态。 检查连接 我们可以使用下面的代码检查连接值。 当运行应用程序时,弹出窗口会通知有关连接。 通过使用上面给出的功能,可以跟踪连接状态并相应地更新您的应用程序。

  • 查看info里面的total_connections_received,如果该值不断升高,则需要修改应用,采用连接池方式进行,因为频繁关闭再创建连接redis的开销很大。