如何确定文件是否存储在Java本地?

时间:2013-01-10 00:32:18

标签: java

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

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

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

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

1 个答案:

答案 0 :(得分:0)

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