폴더에서 특정을 가진 파일 찾기
폴더 경로 (예 :)가 주어 C:\Random Folder
지면 어떻게 어떤 파일을 가진 파일을 txt
있습니까? *.txt
디렉토리에서 검색 해야 생각하지만 처음 에이 검색을 어떻게 시작 해야하는지 잘 모르겠습니다.
System.IO.Directory
클래스와 정적 메소드를 사용 GetFiles
합니다. 경로 및 검색 패턴을 허용하는 지원이 있습니다. 예 :
string[] files = System.IO.Directory.GetFiles(path, "*.txt");
디렉토리 클래스를 사용할 수 있습니다.
Directory.GetFiles(path, "*.txt", SearchOption.AllDirectories)
사실 꽤 신뢰할 수 있습니다. 와 함께 클래스를 사용할 수 있습니다 . LINQ를 사용하면 더욱 편안하게 (LINQ) :System.IO.Directory
System.IO.Path
var allFilenames = Directory.EnumerateFiles(path).Select(p => Path.GetFileName(p));
// Get all filenames that have a .txt extension, excluding the extension
var candidates = allFilenames.Where(fn => Path.GetExtension(fn) == ".txt")
.Select(fn => Path.GetFileNameWithoutExtension(fn));
물론이 기술에도 많은 변형이 있습니다. 필터가 더 간단하면 다른 답변 중 일부가 더 간단합니다. 이 지연된 열거 (중요한 경우)와 더 많은 코드를 하나 서 더 유연한 필터링의 이점을 가지고 있습니다.
아래 메소드는 특정 파일을 가진 파일 만 반환합니다 (예 : .txt1이 아닌 .txt 파일).
public static IEnumerable<string> GetFilesByExtension(string directoryPath, string extension, SearchOption searchOption)
{
return
Directory.EnumerateFiles(directoryPath, "*" + extension, searchOption)
.Where(x => string.Equals(Path.GetExtension(x), extension, StringComparison.InvariantCultureIgnoreCase));
}
내 이해에 따라 두 가지 방법으로 수행 할 수 있습니다.
1) Getfiles 메소드와 함께 디렉토리 클래스를 사용하고 모든 파일을 탐색하여 필요한 것을 확인할 수 있습니다.
Directory.GetFiles ( "your_folder_path) [i] .Contains ("*. txt ")
2) 파일 경로를 사용하여 확인하는 GetExtension 메서드와 함께 경로 클래스를 사용할 수 있으며, 파일 경로를 획득 할 수있는 파일 경로를 가져와 확인에 사용할 수있는 파일 경로를 사용하여 확인합니다.
Path.GetExtension (your_file_path) .Equals ( ". json")
참고 : 두 논리 모두 루핑 조건을 대신합니다.
모든 유형의 확장 파일이있는 읽기 파일 에이 코드를 사용하십시오.
string[] sDirectoryInfo = Directory.GetFiles(SourcePath, "*.*");
참고 URL : https://stackoverflow.com/questions/3152157/find-a-file-with-a-certain-extension-in-folder
'IT' 카테고리의 다른 글
bash에서 json 파일을 구문 분석하기 위해 jq 출력에서 큰 따옴표를 제거하는 방법은 무엇입니까? (0) | 2020.09.11 |
---|---|
div 배경색, onhover 변경 (0) | 2020.09.11 |
Python에서 빠른 쉬운 파일 대화? (0) | 2020.09.11 |
C ++에서 노드를 문자 배열로 변환하는 방법은 무엇입니까? (0) | 2020.09.11 |
암호 해시에 대한 비 랜덤 솔트 (0) | 2020.09.11 |