В Java я пытаюсь перечислить файлы и папки в моем каталоге C:\
и просмотреть их, используя:
File[] files = new File("C:\\").listFiles();
Однако, к моему удивлению, когда я перебираю массив, я нахожу, что первый индекс - C:\Documents and Settings
! Для начала я использую Windows 7 Home Premium и даже не обновил Windows XP или что-то еще, но независимо от того, что я делаю, я не вижу эту папку на своем диске, несмотря на выбор просмотра скрытых папок!?
Более того, как вы и подозреваете, когда вы начинаете использовать рекурсивный метод для просмотра каждой папки на диске, он выдает NullPointerException
, как только он пытается перечислить файлы в этом каталоге.
Кто-нибудь знает, почему это так, или даже лучше, как решить проблему? Любая идея приветствуется, заранее спасибо
ОБНОВЛЕНИЕ: я сейчас очень быстро установил, что C:\Documents and Settiings
является символической ссылкой или "JUNCTION" , поэтому ответьте на вопрос: как мне определить, что это символьная ссылка в Java, так что я могу сказать цикл for пропустить любой?