2010-12-22 4 views
3

은 작동합니다.MemoryStream을 FileStream으로 변환하는 방법은 무엇입니까?

using (ZipInputStream s = new ZipInputStream(File.OpenRead(zipFile))) 
{ 
    ZipEntry theEntry; 
    while ((theEntry = s.GetNextEntry()) != null) 
    { 
    } 
} 

작동하지 않습니다. memorystream

using (ZipInputStream s = new ZipInputStream(memorystream)) 
{ 
    ZipEntry theEntry; 
    while ((theEntry = s.GetNextEntry()) != null)//Exception **EOF in header** 
    { 
    } 
} 

변환 방법은 무엇입니까?

+1

작동합니까? _What_하지 않습니까? 오류? 예외? 그들은 무엇인가? 모든 관련 정보를 제공해야합니다. – Oded

+0

어떤 예외가 있습니까? 모든 스트림이 작동해야합니다. – driis

+0

어디에서'ZipInputStream'을 가져 오나요? – JaredPar

답변

13

내가 사용하고있는 ZipInputStream에 대한 정보가 없으면 스트림의 위치가 처음으로 재설정되기 전에 전달하려는 MemoryStream을 사용하려고합니다. 당신의 코드 전에이 줄을 추가하십시오 : new Filestream();

memoryStream.Seek(0, SeekOrigin.Begin); 
+1

+1, 제공된 정보를 기반으로 한 매우 좋은 추측입니다. – driis

+0

그와 나는 매우 비슷한 문제를 오늘 일찍 만났습니다. :) –

2
FileStream fs = new Filestream(); 

통화가 올바르지 않습니다. FileStream에는 0 개의 인수를 취하는 생성자가 없습니다.

관련 문제