2011-10-03 2 views
1

BLOB 저장소에 내 zip 파일을 저장했습니다. 난 이미 내 아카이브에 세 개의 파일이BLOB 저장소에 저장된 zip 아카이브에서 로컬 폴더로 파일 추출 및 복사

string blobUrl = http://127.0.0.1:10000/devstoreaccount1/usercontrols/ucProfileViewSMSIS.zip"; 
string containerName = "usercontrols"; 
Storage.Blob blobHandler = new Storage.Blob(); 
Stream blobstream = blobHandler.GetBlob(blobUrl, containerName); 

을 다음과 같이 .CODE는 스트리밍 덩어리에서 아카이브를 읽어 보시기 바랍니다. 그 3 개의 파일을 로컬 폴더에 씁니다.

어떻게하면됩니까?

+1

"C 번호"로 제목을 접두사하지 마십시오. 태그는 제목을 읽을 수 없게 만들지 않고 이미이 작업을 수행합니다. –

답변

2

파일의 압축을 풀려면 DotNetZip과 같은 압축 해제 라이브러리가 필요합니다. examples 섹션에서 스트림에서 직접 압축을 해제하는 방법이 있습니다.

스트림에서 입력하십시오. 이 예에서는 입력 스트림에서 zip 아카이브 콘텐츠를 읽은 다음 파일 시스템 파일로 한 항목의 콘텐츠를 추출합니다. 이 예에서 파일 이름 "NameOfEntryInArchive.doc"는 zip 아카이브 내의 항목 이름에만 을 나타냅니다. 이 이름은 이며 ZipFile 객체의 문자열 인덱서에서 색인으로 사용됩니다. 반환 값은 ZipEntry입니다. 그러면 ZipEntry.Extract() 메소드가 호출되어 이 호출되어 현재 작업 디렉토리 을 기본 파일 시스템 파일로 추출합니다. 그 이름의 파일은 파일 시스템에 으로 생성됩니다.

using (ZipFile zip = ZipFile.Read(InputStream)) 
    { 
    ZipEntry entry = zip["NameOfEntryInArchive.doc"]; 
    entry.Extract(); // create filesystem file here. 
    } 
관련 문제