代码之家  ›  专栏  ›  技术社区  ›  user3375672

R、 在Windows的文件名中获取完整的文件路径字符串(空格等)

  •  1
  • user3375672  · 技术社区  · 6 年前

    当然是个老问题,但我没能找到解决办法(也许没有)。在Unix上直接使用R函数 file.path ~ . 如果我需要写,比如Rscript.exe到文件的路径,这将在unix上工作:

    x <- list.files(R.home("bin"), full.names = T, pattern = "Rscript")
    writeLines(x, con = "path_to_rscript.txt")
    

    C:/PROGRA~1/R/R-35~1.1/bin/x64/Rscript.exe

    我想要的东西是:

    C:/Program Files/R-3.5.1/bin/x64/Rscript.exe

    有没有办法避免这种行为(大写的PROGRA是什么?)。

    1 回复  |  直到 6 年前
        1
  •  4
  •   kabanus    6 年前

    的确,结账 normalizePath :

    normalizePath(path, winslash = "\\", mustWork = NA)
    

    在Windows上,它将相对路径转换为绝对路径, 皈依者 从路径元素的短名称到长名称 是由winslash指定的。它将无意识地匹配路径大小写 可以使用当前区域设置。