java - Java中如何判断一个文件是否存储在本地?

标签 java

我想检查一个文件是否存在并且是一个目录:

File file = new File("C:\file.txt");
boolean isValidDir = file.exists() && file.isDirectory();

文件可以存储在同一台计算机上,也可以存储在网络上的不同计算机上。如果文件存储在本地,这些方法将很快返回,但如果文件存储在网络上的其他位置,例如,网络电缆断开,这些方法将需要一段时间才能返回。此外,如果从 EDT 调用这些方法,UI 将显得卡住。 (我从不同的线程调用这些方法以避免这个问题。)

我想知道是否有办法判断文件是否存在,例如U:\helloworld\,存储在本地或网络上的其他位置。这些方法仍然需要一段时间才能在另一个线程中返回,但我需要在 EDT 中使用上面一行的结果来相应地绘制组件。任何建议将不胜感激。

最佳答案

仅一个建议 - 我会找到验证本地文件系统上的文件所需的大致时间。如果花费的时间是大约所用时间的 1.5 倍、2 倍或 3 倍,您可以假设该文件位于不同的文件系统上。

关于java - Java中如何判断一个文件是否存储在本地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14248942/

相关文章:

java - 从 DAO 返回时的 Spring/JPA 分离实体

java - 打印记录的好方法

java JIT——可以进行哪些优化?

java - 进行大量网络调用

java - firestore 中的等效 addValueEventListener 是什么

java - 如何在其他正方形的中心内绘制和旋转正方形?

java - 类设计的最佳实践(子类+重写)

java - Socket.bind 的首选网络接口(interface)

java - 你能用 Java 创建一个链表数组吗?

java - JOOQ API getPrimaryKey() 对每个表返回 null?