0
여하튼 내 콘솔 응용 프로그램은 실행 중 빈 (0 바이트) Zip 파일을 만듭니다. 그러나 중단 점을 설정하고 F10을 사용하여 패킹 함수를 탐색하면 zip이 정상적으로 생성됩니다.콘솔 응용 프로그램에서 빈 zip 파일을 생성합니다.
이 동작은 두 컴퓨터에서 동일합니다. 이미 DotNetZip 및 SharpZipLib을 사용하여 압축을 시도했지만 효과가 없습니다.
private static void CreateModVersionZip(string path, string zipname)
{
using (Package zip = System.IO.Packaging.Package.Open(zipname, FileMode.OpenOrCreate))
{
string destFilename = ".\\mods\\" + Path.GetFileName(path);
Uri uri = PackUriHelper.CreatePartUri(new Uri(destFilename, UriKind.Relative));
if (zip.PartExists(uri))
{
zip.DeletePart(uri);
}
PackagePart part = zip.CreatePart(uri, "", CompressionOption.Normal);
using (FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read))
{
using (Stream dest = part.GetStream())
{
CopyStream(fileStream, dest);
}
}
}
}
어떻게 제대로 작동하도록 :
을 압축 기능 (사용 System.IO.Packaging)는 다음과 같다?
필요할 경우 SharpZipLib 및 DotNetZip에 대한 압축 조각을 제공 할 수 있습니다.
파일이나 디렉토리를 압축하려고합니까? –
'CopyStream'은 정확히 무엇을합니까? 시내가 물이 빠지나요? – ArgusMagnus
@ConnorWright .jar 파일을 압축하려고합니다. –