>  기사  >  백엔드 개발  >  경로가 디렉터리인지 파일인지 확인하는 C# 프로그램

경로가 디렉터리인지 파일인지 확인하는 C# 프로그램

WBOY
WBOY앞으로
2023-09-05 17:49:02635검색

C# 程序检查路径是目录还是文件

소개

경로가 디렉터리인지 파일인지 확인하는 C# 프로그램을 작성하는 방법을 알아봅시다. 폴더라고도 하는 디렉터리는 컴퓨터에서 파일을 저장할 수 있는 위치입니다. 파일 외에도 디렉터리에는 다른 디렉터리나 바로 가기도 포함됩니다.

파일은 고유 식별자와 디렉터리 경로가 있는 드라이브의 데이터 모음입니다. 보거나 쓰기 위해 파일을 열면 스트림으로 변환됩니다. 스트림은 단순히 통신 경로를 통과하는 일련의 바이트입니다.

파일 및 디렉터리

파일은 실제 데이터 파일이고 디렉터리는 논리 파일이 시스템에 배치되는 저장소입니다. 파일 및 디렉터리를 처리하기 위해 CLR(공용 언어 런타임)에는 System.IO 네임스페이스에 File, FileInfo, Directory 및 DirectoryInfo 클래스가 있습니다.

C#에서 디렉터리를 처리하려면 Directory 또는 DirectoryInfo를 사용할 수 있습니다. Directory 클래스는 디렉터리를 처리하기 위한 정적 함수가 포함된 정적 클래스입니다. 이 클래스는 상속될 수 없습니다. DirectoryInfo 인스턴스는 특정 디렉터리에 대한 정보를 제공합니다.

폴더에는 파일 클래스와 파일 정보 클래스가 있습니다. File 클래스는 단일 파일 복사, 이동, 이름 바꾸기, 생성, 열기, 삭제 및 추가와 같은 일반적인 작업을 수행하는 데 사용됩니다. File 클래스는 파일 생성, 액세스 및 쓰기와 관련된 파일 특성이나 날짜-시간 정보를 얻고 변경하는 데에도 사용할 수 있습니다. File 및 FileInfo 클래스는 모두 동일한 기본 기능을 갖습니다.

유일한 차이점은 File 클래스에는 파일을 처리하기 위한 내부 메서드가 있는 반면 FileInfo 클래스에는 파일을 처리하기 위한 인스턴스 메서드가 있다는 것입니다.

Public static bool이 존재합니다(String? Path). 파일이나 디렉터리가 존재하는지 확인하는 데 사용됩니다. 여기서 매개변수는 문자열인가요? 길. 확인해볼 수 있는 경로입니다. 반환 유형은 부울입니다. 이 함수가 부울인 이유는 경로를 확인할 때 결과가 두 개뿐이기 때문입니다. 파일이나 디렉터리는 함수의 키워드와 마찬가지로 존재하거나 존재하지 않습니다. 따라서 디렉토리나 파일이 존재하면 true를 반환하고, 존재하지 않거나 주소에 액세스하는 동안 어떤 종류의 오류(손상된 주소 등)가 발생하면 false를 반환합니다.

알고리즘

아래 알고리즘은 주어진 경로가 디렉터리인지 파일인지 확인하는 프로그램을 작성하는 단계별 프로세스를 제공합니다.

1단계 - 먼저 파일인지 디렉토리인지 확인하려는 주소가 포함된 문자열을 선언해야 합니다

2단계 그런 다음 조건 확인을 수행해야 하며, public static bool Exists(string? path) 메서드를 사용하여 파일이 존재하는지 확인합니다.

3단계 무엇을 먼저 확인하고 싶은지 결정하는 것은 전적으로 프로그래머의 몫입니다. 그는 파일이나 디렉토리의 경로를 확인하고 싶습니까?

4단계 경로가 두 확인 모두에 실패하면 출력은 잘못된 경로이며 메시지로 표시됩니다.

으아아아

출력

으아아아

위 코드는 제공된 경로가 파일인지 확인합니다. 먼저 코드에서 주소를 저장하여 파일인지 디렉터리인지 확인하는 문자열을 선언합니다. 그런 다음 File 및 Directory 클래스와 함께 사용할 수 있는 public static bool Exists(string?path);를 사용하여 해당 클래스 키워드를 사용하여 파일이나 디렉터리가 존재하는지 확인합니다. 이는 조건부 검사를 사용하여 수행할 수 있습니다. 일괄 확인을 원하는 경우 클래스를 생성하여 주소 배열을 매개변수로 전달할 수 있습니다. 그럼 하나씩 확인해 보세요. public static bool Exists (string?path); 부울 값을 반환하는 것이 조건부 검사를 수행하는 이유입니다.

디렉토리가 존재하는지 확인하기 전에 경로 매개변수 끝에서 후행 공백이 제거됩니다.

경로 매개변수의 대소문자 구분은 코드가 실행되는 파일 시스템과 관련이 있습니다. 예를 들어, NTFS(일반 Windows 파일 시스템)는 대소문자를 구분하지 않지만 Linux 파일 시스템은 대소문자를 구분합니다.

시간 복잡성

문자열 선언 후 알고리즘에서. public static bool Exists (string?path); 이 메서드는 부울 반환 메서드입니다. 우리가 찾고 있는 요소를 직접 단일 호출하기 때문에 이 알고리즘의 시간 복잡도는 O(1)입니다.

결론

이제 글의 마지막 부분에 이르렀고, 제공된 경로가 디렉터리인지 파일인지 확인하는 방법에 대해 알아보았습니다. 파일과 디렉터리의 정의부터 시작한 다음 계속해서 파일과 디렉터리의 차이점을 이해합니다. 그런 다음 프로그램의 알고리즘에 대해 배웠고 그 후 경로를 확인하는 프로그램을 보았습니다. 이 기사가 C#에 대한 이해를 높이는 데 도움이 되기를 바랍니다.

위 내용은 경로가 디렉터리인지 파일인지 확인하는 C# 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제