架构师_程序员_码农网

K Parolayı al
Kayıt Olun

QQ登录

Başlamak için sadece bir adım

Arama
Görüntüleme:6104|Yanıt: 2
打印 上一主题 下一主题

[ NET/C# Komut satırı çağrısı yoluyla 7z sıkıştırma

[Bağlantıyı kopyala]
D 跳转到指定楼层
bina sahibi
发表于 2022-4-30 17:46:24|只看该作者回帖奖励|TersGözat|Okuma Modu
Gereksinim: Projenin, WinRAR ile elde edilebilen yüklenen zip dosyasını açması veya sıkıştırması gerekiyor, ancak bunu programlı olarak yapmamız gerekiyor, bu nedenle dosyayı manuel olarak açmak mümkün değil. WinRAR ücretli olduğundan, ihtiyaçlarımızı karşılamak için komut satırı işlemlerini yürüterek 7z'yi çağırmak için .NET / C# kullanabiliriz.

İncele:

NET/C# ile bir zip arşivindeki dosyalar hakkında bilgi almak için kullanılır.
h ttps:// www.itsvse.com/thread-4831-1-1.html

Java ile sarılmış zip açma yöntemi
h ttps:// www.itsvse.com/thread-7750-1-1.html

c# ICSharpCode.SharpZipLib.dll ile dosya/klasör zip, unzip uygulayın
h ttps:// www.itsvse.com/thread-3726-1-1.html
7-Zip, yüksek sıkıştırma oranlarına sahip bir dosya arşivleyicidir. 7-Zip açık kaynaklı ücretsiz bir yazılımdır. Kodun çoğu GNU LGPL lisansı altındadır. Kodun bazı kısımları BSD 3 terim lisansı altındadır. Kodun bazı kısımları da unRAR lisansı altındadır.

İndirme: https://www.7-zip.org/, indirme ve kurulum adımları atlanmıştır (bu makale aşağıdaki D:\360Downloads dizinine yüklenmiştir)

7-Zip komut satırı parametreleri aşağıdaki gibidir:


7-Zip 21.07 (x64) : Telif Hakkı (c) 1999-2021 Igor Pavlov : 2021-12-26

Kullanım: 7z <komut> [<anahtarlar>...] <arşiv_adı> [<dosya_adları>...] [@listfile]

<Komutlar
a : Arşive dosya ekleme
b : Benchmark
d : Dosyaları arşivden sil
e : Dosyaları arşivden ayıklayın (dizin adlarını kullanmadan)
h : Dosyalar için hash değerlerini hesaplar
i : Desteklenen formatlar hakkında bilgi göster
l : Arşiv içeriğini listeler
rn : Arşivdeki dosyaları yeniden adlandır
t : Arşivin bütünlüğünü test edin
u : Dosyaları arşive güncelle
x : Dosyaları tam yollarıyla ayıkla

<Anahtarlar
-- : Anahtarları ve @listfile ayrıştırmasını durdurun
-ai[r[-|0]]{@listfile|!wildcard} : Arşivleri dahil et
-ax[r[-|0]]{@listfile|!wildcard} : eXclude arşivleri
-ao{a|s|t|u} : Üzerine Yazma modunu ayarla
-an : archive_name alanını devre dışı bırak
-bb[0-3] : çıktı günlük seviyesini ayarla
-bd : ilerleme göstergesini devre dışı bırak
-bs{o|e|p}{0|1|2} : çıktı/hata/ilerleme satırı için çıktı akışını ayarla
-bt : yürütme süresi istatistiklerini göster
-i[r[-|0]]{@listfile|!wildcard} : Dosya adlarını dahil et
-m{Parametreler} : sıkıştırma Yöntemini ayarla
-mmt[N] : CPU iş parçacıklarının sayısını ayarlayın
-mx[N] : sıkıştırma seviyesini ayarlayın: -mx1 (en hızlı) ... -mx9 (ultra)
-o{Directory} : Çıktı dizinini ayarla
-p{Password} : Parola ayarla
-r[-|0] : İsim araması için alt dizinleri yeniden arar
-sa{a|e|s} : Arşiv adı modunu ayarla
-scc{UTF-8|WIN|DOS} : konsol girişi/çıkışı için karakter setini ayarla
-scs{UTF-8|UTF-16LE|UTF-16BE|WIN|DOS|{id}} : liste dosyaları için karakter setini ayarla
-scrc[CRC32|CRC64|SHA1|SHA256|*] : x, e, h komutları için hash fonksiyonunu ayarlayın
-sdel : sıkıştırmadan sonra dosyaları sil
-sdel : sıkıştırmadan sonra dosyaları sil -seml[.] : arşivi e-posta ile gönder
-sfx[{name}] : SFX arşivi oluştur
-si[{name}] : stdin'den veri okuma
-slp : Büyük Sayfalar modunu ayarla
-slt : l (Liste) komutu için teknik bilgileri göster
-snh : sabit bağlantıları bağlantı olarak sakla
-snl : sembolik bağlantıları bağlantı olarak saklar
-snh : sabit bağlantıları bağlantı olarak sakla -snl : sembolik bağlantıları bağlantı olarak sakla -sni : NT güvenlik bilgilerini sakla
-sns[-] : NTFS alternatif akışlarını depolar
-so : verileri stdout'a yaz
-spd : dosya adları için joker karakter eşleştirmeyi devre dışı bırak
-spe : ayıkla komutu için kök klasörün çoğaltılmasını ortadan kaldırır
-spf : tam nitelikli dosya yollarını kullan
-ssc[-] : duyarlı büyük/küçük harf modunu ayarla
-sse : bazı girdi dosyalarını açamazsa arşiv oluşturmayı durdurur
-ssp : arşivleme sırasında kaynak dosyaların Son Erişim Zamanını değiştirmeyin
-ssw : paylaşılan dosyaları sıkıştır
-stl : arşiv zaman damgasını en son değiştirilen dosyadan ayarlar
-stm{HexMask} : CPU iş parçacığı benzeşim maskesini ayarlar (onaltılık sayı)
-stx{Type} : arşiv türünü hariç tut
-t{Type} : Arşiv türünü ayarlayın
-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] : Güncelleme seçenekleri
-v{Size}[b|k|m|g] : Birimler oluşturun
-w[{path}] : Çalışma dizini atayın. Boş yol geçici bir dizin anlamına gelir
-x[r[-|0]]{@listfile|!wildcard} : dosya adlarını hariç tut
-y : tüm sorgularda Evet olduğunu varsay
Bir klasörü 7z ile sıkıştırma

komutunu aşağıdaki gibi girin:


sdel parametresinin eklenmesi ile zh klasörü sıkıştırma sonrasında otomatik olarak silinecektir. Sıkıştırılmış dosyayı aşağıda gösterildiği gibi WinRAR ile test edelim:



7z kullanarak dosyayı açın

komutunu aşağıdaki gibi girin:


Açma işlemi aşağıda gösterildiği gibi tamamlanmıştır:



NET/C# komut satırı çağrısı yoluyla 7z açma

NET/C# kodu kullanarak bir komut satırını nasıl çalıştırırsınız? Kod aşağıdaki gibidir:

(SON)




Önceki: 65 kaynak kodu indirme sitesi
Sonraki: [Uygulamalı].NET/C# yöntem zaman aşımı süresi ver
Kod Çiftçi ağı, sadece uygulama sürecinde yayınlandı, teknik zorluklarla karşılaştı, başkalarını yanıltmayın.
FORMALAR
owner| 发表于 2022-4-30 17:49:29|只看该作者
e Dosyaları açın (tüm zip dosyaları orijinal dizin yapısı korunmadan aynı dizine açılır)
# Dosyaları geçerli dizine açın
7z e archive.zip
# Dosyaları e:\testunzip dizinine açın
7z e archive.zip -oe:\testunzip
# Tüm png dosyalarını e:\testunzip dizinine açın
7z e archive.zip -oe:\testunzip *.png -r

x Dosyaların sıkıştırmasını açın (orijinal dizin yapısını koruyun)
# Dosyaları geçerli dizine açın
7z x archive.zip
# Dosyaları e:\testunzip dizinine çıkarın
7z x archive.zip -oe:\testunzip
# Tüm png dosyalarını e:\testunzip dizinine açın
7z x archive.zip -oe:\testunzip *.png -r

l Arşivdeki tüm dosyaların listesini görüntüleyin
7z l archive.zip

-ao Aynı ada sahip dosyalar nasıl işlenir
# -aoa Aynı ada sahip dosyaların üzerine yaz
7z x archive.zip -aoa
# -aos Aynı ada sahip dosyaları atla
# -aou Arşivdeki dosyaları aynı adla yeniden adlandırın
# -aot Paketten çıkarılmış dizindeki dosyaları aynı adla yeniden adlandırın

d Dosyaları archive.zip dosyasından sil
# .bak uzantılı tüm dosyaları archive.zip dosyasından sil
7z d archive.zip *.bak -r

rn Arşivdeki dosyaları yeniden adlandırın
# 1.png dosyasını 1_new.png olarak 2.png dosyasını\2_new.png olarak yeniden adlandırın
7z rn archive.7z 1.png 1_new.png 2.png folder\2_new.png
Kod çiftçi ağı, sadece uygulama sürecinde yayınlandı, teknik zorluklarla karşılaştı, başkalarını yanıltmayın.
ugg bot satışı
bank bank bank
发表于 2022-4-30 20:05:18|只看该作者
Bunu yapabileceğimden emin değilim.
Çiftçi ağı kodu, sadece uygulama sürecinde yayınlandı, teknik zorluklarla karşılaştı, başkalarını yanıltmayın.
Geri gönderi yapabilmeniz için giriş yapmanız gerekmektedir Giriş Yap | Kayıt Ol

İntegral kurallarının bu versiyonu


YASAL UYARI: Code Farmer Network tarafından yayınlanan tüm yazılım, programlama materyalleri veya makaleler çalışma ve araştırma amaçlarıyla sınırlıdır; yukarıdaki içerik ticari veya yasadışı amaçlarla kullanılamaz, aksi takdirde kullanıcının tüm sonuçlarından lütfen kendisi sorumludur. Bu site bilgileri ağdan alınmıştır, telif hakkı anlaşmazlığının bu site ile hiçbir ilgisi yoktur. Yukarıdaki içeriği indirdikten sonraki 24 saat içinde bilgisayarınızdan tamamen kaldırmalısınız. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kaydı satın alın ve daha iyi orijinal hizmet alın. Herhangi bir ihlal varsa, bununla ilgilenmek için lütfen bizimle e-posta yoluyla iletişime geçin.

Posta To:help@itsvse.com

QQ| ( 鲁ICP备14021824号-2)|Sitemap

GMT+8, 2024-9-19 04:39

Hızlı YanıtBaşadön Listeye dön