确定路径字符串是Java的本地机器还是远程机器的方法

时间:2011-10-19 06:38:16

标签: java

我想确定文件路径字符串是在本地计算机上还是在远程服务器/网络位置。

是否有任何Java API来确定上述行为?

1 个答案:

答案 0 :(得分:2)

您可以使用Files.getFileStore()来获取代表存储文件的分区/挂载/驱动器的FileStore

然后调用FileStore.type()可以为您提供有关FileStore所属设备的部分信息。但是,该信息依赖于实现,因此遗憾的是没有标准化的方法来评估它。

刚刚在我的Ubuntu系统上检查过它,它为手头的任务提供了相当无用的值:

  • /报告为rootfs
  • /tmptmpfs
  • /procproc
  • /syssysfs
  • 已安装的Windows共享报告为cifs

换句话说:它似乎直接报告 mount声称是fstype。将其映射到“网络”,“物理”,“合成”需要在代码中内置大量“知识”并且非常脆弱。