3

所以,我知道忽略这些文件有点可能是“手动方式”。

目前,我这样做:

Path filename = ev.context();

if(filename.equals(".DS_Store")){
  break; //the event loop
}

但这对我来说似乎有点 hacky(好吧,我可以为字符串创建一个枚举,创建一个检查方法等等,但是,在特定于操作系统的生成文件的上下文中,我希望找到一些“内置“为我处理这个。),所以我问你Java7 WatchService中是否有某种内置方式我还没有发现忽略这些文件。

ps:对于我的用例,它(可悲地)不是反过来做的选择,比如“忽略除模式之外的所有文件”。它必须是“允许除极少数文件之外的所有文件”。

4

1 回答 1

1

我不相信 Java 支持特定于操作系统的文件名检查。但是,检查隐藏文件似乎很好,但我更喜欢更一般的开头'.'

if (filename.charAt(0) == '.') {
  continue; // skip hidden files. break is probably wrong, I'd continue.
}
于 2014-06-26T06:45:41.200 回答