여러 기준에 따라 Directory.EnumerateFiles에서 파일을 제외 할 수 있습니까?여러 기준에 따라 Directory.EnumerateFiles에서 파일 제외
확장에 기반한 필터링이 정상적으로 작동합니다. 그러나 나는 또한 모든 제외 문자열을 포함하는 파일 이름을 걸러 내고 싶습니다. 어떻게하는지 잘 모르겠습니다. fileArray를 반복하고 각 파일 이름을 검사 할 수 있지만 성능이 저하 될 수 있음을 알고 있습니다 ... 맞습니까?
이것은 첫 번째 제외 필터 thumb
만 사용하는 예제 코드입니다. 이제 exclusion
문자열 배열의 모든 요소를 사용해야합니다. 또한 exclusion
에 사용 된 문자열은 동적이며 반드시 3 가지 필터 기준 만있을 필요는 없습니다. 이것은 단지 예일뿐입니다.
Dim ext() As String = Split(".jpg;.gif;.bmp;.tif;.png;.tiff;.jpeg", ";")
Dim exclusion() As String = Split("thumb,nothing,empty", ",")
Dim fileArray = From chkFile In Directory.EnumerateFiles(fpath, "*.*", SearchOption.TopDirectoryOnly)
Where ext.Contains(Path.GetExtension(chkFile).ToLower(System.Globalization.CultureInfo.InvariantCulture)) _
And Not Path.GetFileNameWithoutExtension(chkFile).ToLower(System.Globalization.CultureInfo.InvariantCulture).Contains(exclusion(0).Trim.ToLower)
아니요 동일하지 않습니다. 나는 그것들을 보았습니다, 그것은 이미 제가하고있는 확장에 의한 필터링입니다. 부분 문자열을 사용하여 결과를 필터링해야합니다. –