我有一个包含大量文件夹的文件夹,所有文件夹的命名约定为mmddyyyy
(例如04102013
,04092013
等)。我有一个包含所有这些路径的文本文件,并且已经成功地在Ruby中编写了一个删除路径的数组,因此我们只剩下日期(但我相信它存储为sting)。
我现在需要做的是获取数组中的日期并为它们添加一些天数。天数将是静态的,并且需要在数组中为所有内容应用相同的值。在第8行,我收到无效日期(ArgumentError
)。最终结果必须是数组中每个项目的+7天数组。现在我甚至无法将值转换为日期格式。
require 'date'
myarray = IO.readlines "/path/to/myfile.txt"
myarray.each do |s|
s.gsub!('/path/to/my/dated/folders/', '')
end
print myarray
myarray.map! {Date.strptime("%m%d%Y")}
# myarray.map! {+(7)}
print myarray
答案 0 :(得分:1)
尝试:
myarray.map!{|s| Date.strptime(s, '%m%d%Y') + 7}
答案 1 :(得分:0)
你非常接近!您需要将数组值传递给日期构造函数。
myarray.map!{|date| Date::strptime(date, "%m%d%Y") + 7}