所以,我知道有可能“手动方式”忽略这些文件。
在片刻,我这样做:
Path filename = ev.context();
if(filename.equals(".DS_Store")){
break; //the event loop
}
但是对我来说这似乎有点hacky(好吧,我可以为字符串创建一个枚举,创建一个检查等的方法,但仍然,在特定于os的生成文件的上下文中,我希望找到一些东西“内置“为我处理这个问题。”,所以我问你在Java7 WatchService中是否有某种内置方式我还没有发现忽略这些文件。
p.s:对于我的用例(遗憾的是)它不是反过来做的选择,比如“忽略除 pattern 之外的所有文件”。它必须是“允许除少数文件之外的所有文件”。
答案 0 :(得分:1)
我不相信Java支持特定于操作系统的文件名检查。但是,检查隐藏文件似乎很好,但我更喜欢使用'.'
if (filename.charAt(0) == '.') {
continue; // skip hidden files. break is probably wrong, I'd continue.
}