See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 11568|Vastuse: 2

[Allikas] [Päris lahing]. NET/C# kutsub 7z dekompressiooni käsurea kaudu

[Kopeeri link]
Postitatud 2022-4-30 17:46:24 | | | |
Nõuded: Projekt peab üles laaditud tihendatud paketi depakkima või tihendama, mida saab üldiselt saavutada WinRAR-i kaudu, kuid selle rakendamiseks tuleb kasutada programmeerimismeetodeid ning faili käsitsi depakkimine on võimatu. Kuna WinRAR on tasustatav, saame kasutada .NET/C# 7z kutsumiseks, tehes käsurea operatsioone, et oma vajadusi täita.

Läbivaatamine:

.net/c#, et saada failiinfo zip-paketist
https://www.itsvse.com/thread-4831-1-1.html

Java kapseldamise zip unzip meetod
https://www.itsvse.com/thread-7750-1-1.html

C# kasutab ICSharpCode.SharpZipLib.dll failide/kaustade tihendamiseks ja depakkimiseks
https://www.itsvse.com/thread-3726-1-1.html
7-Zip on failiarhiveerija, millel on kõrge tihendussuhe. 7-Zip on avatud lähtekoodiga ja tasuta tarkvara. Enamik koodist on litsentseeritud GNU LGPL all. Mõned koodiosad on litsentseeritud BSD 3 tingimuste alusel. Mõnes koodi osas on ka unRAR-i litsentsipiirangud.

Allalaadimise aadress:Hüperlingi sisselogimine on nähtav., allalaadimise ja paigalduse sammud on välja jäetud (see artikkel on paigaldatud :D:\360Downloads kataloogi)

7-Zip käsurea parameetrid on järgmised:


7-Zip 21.07 (x64) : Autoriõigus (c) 1999-2021 Igor Pavlov : 2021-12-26

Usage: 7z <command> [<switches>...] <archive_name> [<file_names>...] [@listfile]

<Commands>
  a : Lisa failid arhiivi
  b : Võrdlusalus
  d : Kustuta failid arhiivist
  e : Failide väljavõtmine arhiivist (ilma katalooginimede kasutamiseta)
  h : Arvuta failide räsi väärtused
  i : Näita teavet toetatud formaatide kohta
  L : Arhiivi sisu loend
  rn : Failide ümbernimetamine arhiivis
  t : Arhiivi terviklikkuse testimine
  u : Uuenda failid arhiivi
  x : eXtract failid täisteedega

<Switches>
  -- : Peatuslülitid ja @listfile parsimine
  -ai[r[-|0]]{@listfile|! wildcard} : Lisa arhiivid
  -ax[r[-|0]]{@listfile|! wildcard} : eXclude arhiivid
  -ao{a|s|t|u} : sea Overwrite režiim
  -an : lülita välja archive_name väli
  -bb[0-3] : sea väljundlogaritmi tase
  -bd : lülita edenemisindikaator välja
  -bs{o|e|p}{0|1|2} : määra väljundvoog väljund/vea/edenemisjoone jaoks
  -BT : näita täitmise aja statistikat
  -i[r[-|0]]{@listfile|! wildcard} : Lisa failinimed
  -m{Parameetrid} : hulga kokkusurumise meetod
    -mmt[N] : seadista CPU lõimede arv
    -mx[N] : seadista kompressioonitase: -mx1 (kiireim) ... -mx9 (ultra)
  -o{Directory} : sea Output kataloog
  -p{Password} : sea parool
  -r[-|0] : Rekursiivsed alamkataloogid nimeotsinguks
  -sa{a|e|s} : sea Arhiivi nimerežiim
  -scc{UTF-8| WIN| DOS} : sea konsooli sisendi/väljundi jaoks märgikomplekt
  -scs{UTF-8| UTF-16LE| UTF-16BE| WIN| DOS| {id}} : sea charset list-failide jaoks
  -scrc[CRC32| CRC64| SHA1| SHA256|*] : määra räsi funktsioon x, e, h käskude jaoks
  -sdel : failide kustutamine pärast tihendamist
  -seml[.] : saada arhiiv e-posti teel
  -sfx[{name}] : Loo SFX-arhiiv
  -si[{name}] : loe andmeid STDIN-ist
  -slp : sea Large Pages režiim
  -slt : näita tehnilist teavet l (List) käsule
  -SNH : salvesta kõvad lingid linkidena
  -SNL : salvesta sümboolseid linke linkidena
  -sni : salvesta NT turvainfo
  -sns[-] : salvesta NTFS alternatiivseid vooge
  -nii : kirjuta andmed stdouti
  -spd : keela failinimede jaoks wildcard'i sobitamine
  -spe : eemaldada juurkausta duplikatsioon ekstraktimiseks
  -spf : kasuta täielikult kvalifitseeritud failiteid
  -ssc[-] : sea tundlik korpuse režiim
  -sse : peata arhiivi loomine, kui see ei suuda avada mõnda sisendfaili
  -ssp : ära muuda lähtefailide viimast juurdepääsu aega arhiveerimise ajal
  -ssw : Tihenda jagatud failid
  -stl : sea arhiivi ajatempel kõige hiljuti muudetud failist
  -stm{HexMask} : seadista CPU lõime afiinsuse mask (kuueteistkümnendsüsteemi arv)
  -stx{Type} : välista arhiivitüüp
  -t{Type} : Arhiivi tüüp
  -u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] : Uuenda valikud
  -v{Size}[b|k|m|g] : Loo mahud
  -w[{path}] : määra Töö kataloog. Tühi tee tähendab ajutist kausta
  -x[r[-|0]]{@listfile|! wildcard} : eXclude failinimed
  -y : eelda Jah kõigil päringutel
Tihenda kaustad 7z-ga

Käsk on järgmine:


-sdel parameetri lisamise tõttu kustutatakse zh kaust automaatselt, kui tihendamine on lõppenud. Testime tihendatud faili WinRARiga, nagu allpool näidatud:



Paki fail lahti 7z-ga

Käsk on järgmine:


Dekompressioon on lõpule viidud, nagu alloleval joonisel näidatud:



.NET/C# kutsub 7z dekompressiooni käsurea kaudu

Kuidas kasutada .NET/C# koodi käsurea käivitamiseks? Kood on järgmine:

(Lõpp)




Eelmine:65 lähtekoodi allalaadimise saiti
Järgmine:[Päris lahing]. NET/C# määrab meetodile ajapiirangu
 Üürileandja| Postitatud 2022-4-30 17:49:29 |
e Failide lahtipakkimine (kõik tihendatud failid dekompresseeritakse samasse kataloogi, säilitamata algset kataloogistruktuuri)
# Paki fail lahti praegusesse kausta
7z e archive.zip
# Paki fail lahti e:\testunzip kataloogi
7z e archive.zip -oe:\testunzip
# Paki kõik PNG-failid lahti e:\testunzip kataloogi
7z e archive.zip -oe:\testunzip *.png -r

x Paki fail lahti (säilita algne kataloogistruktuur)
# Paki fail lahti praegusesse kausta
7z x archive.zip
# Paki fail lahti e:\testunzip kataloogi
7z x archive.zip -oe:\testunzip
# Paki kõik PNG-failid lahti e:\testunzip kataloogi
7z x archive.zip -oe:\testunzip *.png -r

l Vaata kõigi failide nimekirja paketis
7z l archive.zip

-ao Kuidas käsitletakse sama nimega faile
# -AOA kirjutab sama nimega faili üle
7z x archive.zip -aoa
# -aos Jäta samanimeline fail vahele
# -aou nimetab arhiivi sama nimega ümber
# -aot nimetab välja võetud kataloogis sama nimega faile ümber

d Kustuta failid paketi sees
# Kustuta kõik failid, millel on .bak sufiks archive.zip
7z d archive.zip *.bak -r

RN nimetab faili ümber pakendis
# Nimeta fail ümber 1.png 1_new.png 2.png kaustaks\2_new.png
7z prn archive.7z 1.png 1_new.png 2.png kausta\2_new.png
Postitatud 2022-4-30 20:05:18 |
Õpi õppima.
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com