2012-06-02 2 views
0

파일 이름이 아래와 같이 선언되었습니다.파일 이름 오류

filename = Time.now.strftime("%H:%M:%S")+'.json' 

나는이

File.open(filename,'w') do |f| 
f.write(rsp) 
end 

오류 '초기화'에 수행 할 때 오류가 발생합니다 : 잘못된 인수 - 18 : 28 : 20.json 나는 파일 이름의 beacuse 가정. 내가 '정상적인'이름을 쓸 때 모든 것이 정상적으로 작동하므로 어떤 조언이 필요합니까?

+0

은 무엇 OS? 나를 위해 잘 작동합니다. –

+0

대신 밑줄을 사용하려고하면 어떻게됩니까? –

+0

Windows 7을 사용 중입니다. –

답변

2

시도 :

filename = Time.now.strftime("%H_%M_%S")+'.json' 
1

Windows는 드라이브 문자 구분 기호로 콜론을 사용합니다. 다른 특수 문자는 this SO question을 참조하십시오.

다른 구분 기호를 사용하십시오. 당신은 그것을 벗어날 수 있을지도 모르지만, 정말로 가치있는 것은 아닙니다.

FWIW, 타임 스탬프가 붙은 파일 이름에 대해 나는 yyyymmdd-hhmmss 또는 이와 유사한 경향이 있습니다.

파일과 같은 것들에 대해서는 질문에 더 완벽한 정보를 포함하는 것이 좋습니다. 이름 지정 규칙은 OS마다 다릅니다. 잘 알려져 있습니다.

+0

시간을 내 주셔서 감사합니다. –