7z ????????
??
7-Zip ??????????????? ????????? Aspose.ZIP API ???????????????? ????????????????????????? 7-Zip ??????????????????�Aspose.ZIP API ??7-Zip ????????????? SevenZipArchive ??????????�??????????????????????????????????????????�API ??7z ????????????????? SevenZipArchiveEntry ??????????
7-Zip ?????????
????????SevenZipArchive ??????????? 7-Zip ???????????????????
1 using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
2 {
3 using (var archive = new SevenZipArchive())
4 {
5 archive.CreateEntry("data.bin", "file.dat");
6 archive.Save(sevenZipFile);
7 }
8 }7-Zip ????? ???????
SevenZipArchive ???????????????????????????????????????? CreateEntries ???????????�????????7-Zip ????? ???????????????????
1 using (SevenZipArchive archive = new SevenZipArchive())
2 {
3 archive.CreateEntries(dataDir);
4 archive.Save("SevenZip.7z");
5 }7-Zip ?????
Aspose.ZIP API ??7z ?????? AES ????????????????? SevenZipAESEncryptionSettings ??????????????????AES ????????????????????
1 using (var archive = new SevenZipArchive(new SevenZipEntrySettings(null, new SevenZipAESEncryptionSettings("p@s$"))))
2 {
3 archive.CreateEntry("data.bin", new MemoryStream(new byte[] { 0x00, 0xFF }));
4 archive.Save("archive.7z");
5 }AES-256 ??7z ??????????????????????
LZMA ??????? 7-Zip ?????
????????LZMA ??? AES ???????? 7z ????????????????????
??: ??LZMA ??? C# ??? AES ??????? 7z ?????
- FileMode.Create ???????? 7z ?????????? ???????????
- SevenZipArchive ?????????????????
- CreateEntry ??????????????????????????????????
- ?????????
- SevenZipLZMACompressionSettings ????? LZMA ?????
- SevenZipAESEncryptionSettings ????? AES ????? (???????)?
- Save ??????????????????????????????????????????????
1 using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
2 {
3 using (var archive = new SevenZipArchive())
4 {
5 archive.CreateEntry("entry1.bin",
6 new MemoryStream(new byte[] { 0x00, 0xFF }),
7 new SevenZipEntrySettings(new SevenZipLZMACompressionSettings(),
8 new SevenZipAESEncryptionSettings("test1")),
9 new FileInfo("data1.bin"));
10 archive.Save(sevenZipFile);
11 }
12 }????BZip2?PPMd?LZMA2 ????????? 7z ????????????????????????????????
????????????????
?????????????????????????????????????????????????????????
??: ??LZMA ??? C# ??? AES ??????? 7z ?????
- FileMode.Create ????????? ?????????7z ????????????
- ????????????????????? (FileInfo ??????) ???????
- SevenZipArchive ?????????????????
- ????????CreateEntry ??????????????????????????
- ??????????(?????SevenZipStoreCompressionSettings)?
- SevenZipAESEncryptionSettings ????????????????????????????
- Save ??????????????????????????????????????????
1 using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
2 {
3 FileInfo fi1 = new FileInfo("data1.bin");
4 FileInfo fi2 = new FileInfo("data2.bin");
5 FileInfo fi3 = new FileInfo("data3.bin");
6 using (var archive = new SevenZipArchive())
7 {
8 archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
9 archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
10 archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
11 archive.Save(sevenZipFile);
12 }
13 }7z ????????
Now Aspose.ZIP can extract LZMA, LZMA2, BZip2 and PPMd compressed archives.
????????7z ???????????????????????????
1 using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
2 {
3 archive.ExtractToDirectory("ExtractionFolder");
4 }