R语言write.csv保存CSV报错无此文件或目录的原因与解决方法
报错原因
write.csv函数本身仅支持向已存在的目录路径写入文件,不会自动创建路径中不存在的上级文件夹。代码里指定的写入路径C:/Users/bradenholmes/Documents/Finance363/下,Finance363文件夹实际不存在,或是路径拼写和真实文件夹名称不匹配,就会触发无法打开连接、找不到对应文件/目录的报错。
使用的写入代码:
write.csv(Example.raw.data, "C:/Users/bradenholmes/Documents/Finance363/NewRawData.csv")
触发的报错信息:
Error in file(file, ifelse(append, "a", "w")) : cannot open the connection
In addition: Warning message:
In file(file, ifelse(append, "a", "w")) :
cannot open file 'C:/Users/bradenholmes/Documents/Finance363/NewRawData.csv': No such file or directory
解决方案
- 手动创建路径中缺失的
Finance363文件夹:打开系统文件资源管理器,进入C:/Users/bradenholmes/Documents/路径,手动新建名为Finance363的文件夹,之后重新运行原写入代码即可正常导出文件。 - 代码自动创建缺失目录:在写入逻辑前增加目录判断、创建的代码,无需手动操作,即使目录已存在也不会覆盖原有内容:
# 定义目标存储目录 save_dir <- "C:/Users/bradenholmes/Documents/Finance363" # 递归创建不存在的目录层级 dir.create(save_dir, recursive = TRUE, showWarnings = FALSE) # 拼接文件路径后执行写入 write.csv(Example.raw.data, file.path(save_dir, "NewRawData.csv"))
- 核对路径拼写正确性:如果手动确认文件夹存在但仍报错,可在R控制台运行
list.dirs("C:/Users/bradenholmes/Documents/"),查看该路径下所有真实存在的文件夹名称,排查是否存在文件夹名拼写错误、多打空格、大小写不匹配、路径层级写错的问题。
内容的提问来源于stack exchange,提问作者bradenholmes
相关产品推荐
相关产品推荐

