2012-08-09 5 views
2

여기에 파일 경로를 받아 들일 수있는 텍스트 상자가 있습니다. 주어진 경로 파일이 존재하는지 여부를 (버튼 클릭으로) 어떻게 검증해야합니까?주어진 경로 문자열이 유효하지 않은지 확인하십시오.

예를 들어

, "C : mydocs 다음은 \의 Sample.txt"실제로 내 로컬 드라이브에 기존과 전혀 없다 '\' 'C :'이후되지 않기 때문에 무효로한다 ..

내가 사용 시도 이 :

FileInfo fi = new FileInfo(fName); 
if (fi.Exists) 
    //do something 

하지만 내 issue..can 사람이 조언을 만족하지 않는 이유는 무엇입니까? 경로 (파일이 존재 옆 경우) 유효한 경우

+0

'fi.Exists'는 false로 평가 될 것이므로 실제로 작동하지 않는 것은 무엇입니까? – V4Vendetta

+0

aspnet 인 경우 문제점을 강조해야합니다. 클라이언트 컴퓨터에서 유효한 파일을 매핑하는 방법과 이러한 검사를 수행하는 서버에서 매핑하는 방법은 무엇입니까? :) – V4Vendetta

답변

3

사용 Uri.IsWellFormedUriString(path, UriKind.Absolute); 확인하기 위해 열린 우리당 확인 여기를 읽어

: http://msdn.microsoft.com/en-us/library/system.uri.iswellformeduristring.aspx

샘플 :

bool isValid = Uri.IsWellFormedUriString(fName, UriKind.Absolute) && 
       File.Exists(fName); 

은 if 결과가 true이면 사용자가 제공 한 파일 형식이 유효하고 파일이 파일 시스템에 존재하는지 확인할 수 있습니다.

+0

그것은 내 양식의 첫 번째로드 중에 작동하지 ..하지만 다음에 다시 클릭 한 후 해당 페이지로 돌아가서 문제가 반환되었습니다 .. – CMA

+0

결과로 무엇을 얻고 있습니까? – Tamir

5
if(!File.Exists(filename)) 
{ 
// file does not exist or path is invalid 
} 
관련 문제