如何在R语言中将当前日期按指定格式嵌入文件名?
解决文件名嵌入指定格式日期的问题
你当前的代码存在两个问题:一是日期格式未按需求转换,二是文件名拼接逻辑错误,导致后缀重复且格式不符合预期。可以按以下方式修正:
格式化日期
使用R的format()函数,将Sys.Date()返回的YYYY-MM-DD格式转换为MM.DD.YY格式,对应的格式字符串为"%m.%d.%y":formatted_date <- format(Sys.Date(), "%m.%d.%y")格式符说明:
%m:两位数字的月份(如10)%d:两位数字的日期(如16)%y:两位数字的年份(如23)
正确拼接文件路径
不要保留原文件名里的.xlsx,而是将路径、文件名前缀、格式化后的日期、后缀.xlsx依次拼接,推荐用paste0()(默认无分隔符)避免多余空格:# 拼接完整路径 full_file_path <- paste0("C:\\User\\Me\\Documents\\File Name ", formatted_date, ".xlsx") # 保存文件 write.xlsx(DTAX, full_file_path)
也可以将两步合并为一行代码:
write.xlsx(DTAX, paste0("C:\\User\\Me\\Documents\\File Name ", format(Sys.Date(), "%m.%d.%y"), ".xlsx"))
这样生成的文件名就会是File Name 10.16.23.xlsx,符合你的需求。
内容的提问来源于stack exchange,提问作者Antonio
相关产品推荐
相关产品推荐

