2013-04-08 2 views
0

mmddyyyy (예 : 04102013, 04092013 등)의 명명 규칙을 사용하는 폴더가 모두 들어있는 폴더가 있습니다. 나는이 모든 경로를 포함하는 텍스트 파일을 가지고 있으며 Ruby에서 경로를 제거하는 배열을 성공적으로 프로그래밍하여 날짜가 남았습니다 (그러나 나는 그것이 찌르기로 저장되어 있다고 생각합니다).문자열을 ddmmyyyy 형식으로 현재

지금해야 할 일은 배열에서 날짜를 가져 와서 며칠을 추가하는 것입니다. 일수는 정적 일 것이고 배열의 모든 것에 대해 동일한 값을 보드 전체에 적용해야합니다. 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 

답변

1

시도 :

myarray.map!{|s| Date.strptime(s, '%m%d%Y') + 7} 
0

당신은 아주 가까이 있습니다! 배열 생성자에 배열 값을 전달해야합니다.

myarray.map!{|date| Date::strptime(date, "%m%d%Y") + 7} 
관련 문제