R的超级新手。我有点卡在file.create函数上。我已成功使用它在set工作目录中创建一个文件,当我已经创建了一个单独的文件路径并将该文件路径分配给变量时。
但是,为什么我不能使用file.create并简单地列出所需的文件路径和文件名而不使用file.path函数? file.create
函数是否不具备在指定目录中自动创建文件的能力,但需要file.path
函数来保护目录的路径吗?
任何澄清将不胜感激。如果这个问题相当简单,我会道歉但是我想让基础知识失败。
以下是有效的代码:
BasicDir <- "/Users/slam1924/Desktop/LearnR Tutorials"
setwd(BasicDir)
file.create("myfile.doc")
fp1 <- file.path("/Users/slam1924/Desktop/Vocal Covers", "mytext.doc")
fp1
file.create(fp1)
替代方案:
file.create(file.path("/Users/slam1924/Desktop/Vocal Covers", "mytext.doc"))
以下是失败的代码:
file.create("/Users/slam1924/Desktop/Vocal Covers", "mytext.doc")
答案 0 :(得分:1)
首先阅读该功能的帮助。 help(file.create)
。用法为file.create(..., showWarnings = TRUE)
在详细信息下,您会看到
file.create创建具有给定名称的文件(如果尚未创建) 存在并截断它们。
所以当你尝试
时file.create("/Users/slam1924/Desktop/Vocal Covers", "mytext.doc")
它正在尝试创建两个文件,其中一个(“/ Users / slam1924 / Desktop / Vocal Covers”)可能已经是一个目录。
如果文件或目录已存在,您将看到如下错误:
[1] FALSE
Warning message:
In file.create("data") :
cannot create file 'data', reason 'Permission denied'
你可以通过发送一个字符串函数来解决这个问题。更改失败的代码:
file.create("/Users/slam1924/Desktop/Vocal Covers/mytext.doc")