이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 21011|회답: 0

[출처] C#은 파일 크기를 가져옵니다

[링크 복사]
게시됨 2016. 3. 24. 오후 5:14:17 | | |

물론, 네임스페이 System.IO 도입해야 합니다

첫 번째는:

public static long GetDirectoryLength(string dirPath)
{
주어진 경로가 존재하는지 확인하고 없으면 종료하세요
만약 (! Directory.Exists(dirPath))
0을 반환;
롱렌 = 0;

//定义一个DirectoryInfo对象
DirectoryInfo di = new DirectoryInfo(dirPath);

GetFiles 메서드를 사용해서 di 디렉터리 내 모든 파일의 크기를 확인하세요
foreach (FileInfo fi in di.GetFiles())
{
렌 += Fi. 길이;
}

di에 모든 폴더를 가져와서 재귀를 위해 새로운 객체 배열에 저장하세요
DirectoryInfo[] dis = di.GetDirectories();
만약 (dis. 길이 > 0)
{
(정수: i = 0; 저는 < 있습니다. 길이; i++)
{
len += GetDirectoryLength(dis. FullName);
}
}
렌;
}

두 번째

또한 재귀 개념을 사용하지만, 파일 클래스의 Exits 메서드로 판단됩니다

//所给路径中所对应的是否为文件

공개 정적 롱 파일사이즈(문자열 파일패스)
{
긴 온도 = 0;

//判断当前路径所指向的是否为文件
if (File.Exists(filePath) == false)
{
string[] str1 = Directory.GetFileSystemEntries(filePath);
foreach (str1의 s1 문자열)
{
temp += FileSize(s1);
}
}
그렇지 않으면
{

FilePath가 가리키는 파일 방향과 연관되도록 FileInfo 객체를 정의하세요,

//以获取其大小
FileInfo fileInfo = new FileInfo(filePath);
fileInfo.Length를 반환;
}
리턴 온도;
}

사실 폴더를 삭제하는 개념도 이와 같아요. 설정이 훨씬 간단해요. 그냥 파일인지 폴더인지 판단하고, 파일이면 삭제하면 됩니다. 만약 폴더라면, 재귀적입니다




이전의:C#의 get, post HTTP 요청에는 retry 매개변수가 포함되어 있습니다
다음:Winform과 WPF 선택 폴더 대화 대화 간의 유사점과 차이점
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com