2012-04-02 2 views
1

Для моего приложения мне нужно отслеживать все файлы, которые касаются с помощью ОС (Windows или Mac). Коснувшись, я говорю об открытии файлов или сохранении файлов. Это вообще возможно? И если да, какие ключевые слова должны быть Google?Java: отслеживать файлы, которые коснулись ОС

+0

Какие ключевые слова у вас есть? Какие исследования вы сделали? – Gray

ответ

2

Apache commons io библиотеку, если вы хотите использовать с Java 6. *

простирающийся больше: О второй взгляд здесь - вопрос в SO {Is there a sophisticated file system monitor for Java which is freeware or open source?} Это может быть тот, кого интересует Roflcoptr. Он говорит о http://jnotify.sourceforge.net/. Однако я не использовал это для получения информации о чтении.

+0

Большое спасибо, это действительно здорово, но похоже, что он не отслеживает доступ только для чтения. – RoflcoptrException

+0

@Roflcoptr: доступ к чистому чтению, вероятно, не может быть прослежен от чистого кода Java вообще. * * Возможно при написании кода нижнего уровня (по крайней мере, в Windows). Зачем тебе это нужно? –

+0

Это было бы возможно для меня. В конце концов, мне нужно приложение Java, в котором отображается журнал всех файлов, которые были открыты. Для меня не проблема писать код нижнего уровня для прямого доступа к Windows, а затем предоставить интерфейс для моего Java-приложения. – RoflcoptrException

4

Java 7 имеет некоторые особенности для этого - Watching a directory for changes - API

Вот блог о том же Watching a directory for changes

+2

+1, но, пожалуйста, укажите более подробную информацию, чем просто ссылку. Вы должны отредактировать свой ответ и предоставить отрывок из уведомлений io. Может быть, пример кода. – Gray

+1

Насколько я знаю, уведомления помогают только с доступом к записи. Я сомневаюсь, что вы можете получать уведомления о чистом доступе только для чтения. –