R: list.files () не находит файлы в «специальной папке» - PullRequest
0 голосов
/ 11 июля 2019

У меня следующая проблема: я хочу рекурсивно перечислить все файлы в заданной папке. Но эта папка содержит какую-то специальную папку, куда list.files() не может заглянуть. Тем не менее, fs::dir_ls() может заглянуть в папку. Смотрите пример:

> list.files(path, recursive = TRUE)
[1] "???"                               "archive_folders.R"                
[3] "archived_folder/archived_file.txt"
> 
> dir_ls(path, recurse = TRUE)
U:/Eigene Dateien/R/archive_folders/archive_folders.R
U:/Eigene Dateien/R/archive_folders/archived_folder
U:/Eigene Dateien/R/archive_folders/archived_folder/archived_file.txt
U:/Eigene Dateien/R/archive_folders/ааа
U:/Eigene Dateien/R/archive_folders/ааа/archived_file.txt

Я работаю на Windows 7 и, просматривая свойства папки aaa, не дал подсказки о проблеме. Так что мой вопрос двоякий:

  1. Любые идеи о том, что может быть такого особенного в папке aaa?
  2. Есть ли вероятность, что list.files() сможет найти файлы в этой специальной папке?

EDIT: Название папки ааа на самом деле , а не aaa. Звучит запутанно? Название папки состоит из U+00430, а не обычной буквы a (U+0061).

1 Ответ

0 голосов
/ 11 июля 2019

У меня была похожая проблема.Я не знаю почему, но list.files() просто не работал на моем предыдущем компьютере.Я решил это используя dir().Эта функция загружается в базу R.

dir(path, recursive = TRUE)

В противном случае, вы можете попробовать это, чтобы увидеть, если изменение рабочего каталога изменит результат:

setwd(path)
dir(, recursive = TRUE)
list.files(, recursive = TRUE)

Что касается вашего вопроса относительно папкиЯ понятия не имею, почему это происходит.

...