Programming/Delphi

유효한 파일명인지 체크

통통만두 2011. 7. 5. 14:33
반응형

파일명에는 들어가서는 안 될 문자가 몇 개 있다.



1. \
2. /
3. :
4. *
5. ?
6. "
7. <
8. >
9. |

물론 탐색기같은 곳에서 저런 문자를 쓰면 친절하게 알려주지면, 소스내에서 코딩을 할 때 무심코 저런 문자를 쓰거나,

날짜 형식(14:32) 같은 것을 파일명에 포함해버리면 에러가 난다. 예외처리를 잘 해두면 원인을 파악하는데 빠르지만,

그렇지 않을 경우에는 헤메는 경우가 있.. (나만 그랬나? -_-;)

아래와 같은 함수로 파일명을 체크한 후에 안전하게 저장을 하면 끗~

function FileNameValidCheck(const FileName: String) : Boolean;
var
  i : Integer;
begin
   Result := True;

   i := GetFileAttributes( PChar(FileName) );
   if i = -1 then
   begin
      i := GetLastError;

      // 파일 이름이 잘못된 경우.
      if i = ERROR_INVALID_NAME then
         Result := False
   end;
end;
반응형