2009년 1월 31일 토요일

C#에서 압축파일 관리

SharpZipLib 라이브러리 이용.
다양한 압축 형식을 지원한다. GPL 라이센스 따름.
압축 풀기... 자세한 옵션은 다운로드 페이지에서 Help파일과 샘플을 받아 보길..
지금은 제일 간단한 방법만....

FastZip fz = new FastZip();
fz.CreateEmptyDirectories = false;
fz.RestoreAttributesOnExtract = false;
fz.ResotreDataTimeOnExtract = false;
fz.ExtractZip("압축파일 절대경로", "압축해제할 폴더", FastZip.Overwrite.Always, null, null, null, false);

압축 해제 진행상황을 확인하고 싶을 경우 아래와 같이 변경하여 객체를 생성..

TimeSpan interval = ImteSpan.FromSeconds(1);

FastzipEvents events = new FastZipEvents();
events.Progress = new ProgressHandler(ShowProgress);
events.ProgressInterval = interval;

FastZip fz = new FastZip(events);
....


void ShowProgress(object sender, ProgressEventArgs e)
{
    progressBar.Value = Convert.ToInt32(e.PercentComplete);
}

댓글 없음:

댓글 쓰기