2012-12-20 3 views
0

아래에서 이것을 사용하여 최신 파일을 만들 수 있습니다. 하지만 최근 다만 최신이디렉토리에 생성 된 특정 패턴의 최신 파일을 얻는 방법

var directory = new DirectoryInfo("D:\\my_dir\\dir_1\\dir_2\\"); 
     var smf_log_name = directory.GetFiles().OrderByDescending(f => f.LastWriteTime).First(); 
+0

'. (패턴)'? –

+1

오해가 아닌 한이 디렉토리를 수행 할 수 없습니까? directory.GetFiles ("myPattern"). OrderByDescending ...'? – keyboardP

+0

@RobertHarvey, 예를 들어 주시겠습니까? –

답변

6

음을 생성하지, 특정 패턴을 생성하려면이있는 경우, DirectoryInfo.GetFiles는 전달 된 패턴에 패턴 인수를

var directory = new DirectoryInfo("D:\\my_dir\\dir_1\\dir_2"); 
var smf_log_name = directory.GetFiles("*.txt").OrderByDescending(f => f.LastWriteTime).First(); 

에주의를 걸리는 과부하를 가지고 패턴에 어떤 파일이 순서가 InvalidOperationException

FileInfo result = null; 
var directory = new DirectoryInfo("D:\\my_dir\\dir_1\\dir_2"); 
var list = directory.GetFiles("*.txt"); 
if(list.Count() > 0) 
{ 
    result = list.OrderByDescending(f => f.LastWriteTime).First(); 
} 
1

당신은에서 검색 패턴을 사용할 수 있습니다 던질 것이다 지정되지방법.

directory.GetFiles("myPattern").OrderByDescending(f => f.LastWriteTime).First(); 

모든 하위 디렉토리가 검색에 포함하려는 경우도 SearchOption.AllDirectories를 사용할 수 있습니다.

directory.GetFiles("myPattern", SearchOption.AllDirectories).OrderByDescending(f => f.LastWriteTime).First(); 
관련 문제