2015-01-06 11 views
0

내 코드를 파일을 내가 이름 pubEd으로 폴더를 만든 후 zip 파일을 만든 후 코드의 두 번째 줄에C#에서 압축 파일 내부에 폴더에 파일을 압축 할 수

ZipArchive zip = ZipFile.Open(destToZip, ZipArchiveMode.Create); 
zip.CreateEntry("pubEd/"); 

string[] fileEntries = Directory.GetFiles(dirToZip); 
foreach (string fileName in fileEntries) 
    zip.CreateEntryFromFile(fileName,Path.GetFileName(fileName), CompressionLevel.Optimal); 

zip.Dispose(); 

을 다음과 같이됩니다 추가 zip 파일 내부.

다음 줄에 파일을 zip 폴더에 추가합니다.

파일이 zip에 직접 추가되는 현상이 발생합니다.

나는이 파일을 zip 내부에서 만든 디렉토리 안에 추가하려고합니다.

어떻게하면됩니까?

+0

아마 http://www.icsharpcode.net/OpenSource/SharpZipLib/ – gmlacrosse

+0

을 확인해보십시오.'ZipArchive Zip ='코드를'using() {} '로 묶어보십시오. 직접 전화하지 않아도됩니다. 'Dispose()'메서드 [ZipFileExtensions.CreateEntryFromFile MSDN] (http://msdn.microsoft.com/en-us/library/hh485720%28v=vs.110%29.aspx) – MethodMan

답변

2

모양에 따라 Path.GetFileName(fileName)"pubEd/" + Path.GetFileName(fileName)으로 바꿉니다. 그리고 두 번째 줄을 제거하십시오. 그게 바로 설명서를 읽은 것을 토대로 한 것입니다. 나는 실제로 그것을 시도하지 않았다.