압축 파일을 프로그래밍 방식으로 압축 해제하려고합니다.
System.IO.Compression.GZipStream
.NET 에서 클래스를 사용해 보았지만 앱이 실행될 때 (실제로 단위 테스트)이 예외가 발생합니다.
System.IO.InvalidDataException : GZip 헤더의 매직 번호가 올바르지 않습니다. GZip 스트림을 전달하고 있는지 확인하십시오.
지금은 실현 .zip
파일이 동일하지 않습니다 .gz
파일 및 그 GZip
와 동일하지 않습니다 Zip
.
그러나 압축 파일을 수동으로 두 번 클릭 한 다음 "모든 파일 추출"버튼을 클릭하여 파일을 추출 할 수 있기 때문에 코드에서도 파일을 추출하는 방법이 있어야한다고 생각합니다.
따라서 Process.Start()
압축 파일의 경로를 입력 으로 사용하려고했습니다 . 이로 인해 앱이 압축 파일의 내용을 보여주는 창을 열게됩니다. 괜찮습니다. 그러나 "모든 파일 추출"버튼을 클릭하지 않아도 서버에 앱이 설치됩니다.
그렇다면 앱에서 압축 파일의 파일을 추출하려면 어떻게해야합니까?
아니면 다른 방법이 있습니까? 타사 라이브러리 또는 앱을 다운로드하지 않고 코드로 작성하는 것을 선호합니다. 보안 부서는 그것에 대해 너무 화려하지 않습니다 ...