Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 11568|Atsakyti: 2

[Šaltinis] [Tikroji kova]. NET/C# iškviečia 7z dekompresiją per komandinę eilutę

[Kopijuoti nuorodą]
Publikuota: 2022-4-30 17:46:24 | | | |
Reikalavimai: Projektas turi išspausti arba suspausti įkeltą suspaustą paketą, o tai paprastai galima pasiekti naudojant WinRAR, tačiau jam įgyvendinti turime naudoti programavimo metodus, o failo rankiniu būdu išspausti neįmanoma. Kadangi WinRAR yra mokamas, galime naudoti .NET/C#, kad iškviestume 7z, atlikdami komandų eilutės operacijas, kad patenkintume savo poreikius.

Peržiūra:

.net/c#, kad gautumėte failo informaciją ZIP pakete
https://www.itsvse.com/thread-4831-1-1.html

Java kapsuliavimo zip išpakavimo metodas
https://www.itsvse.com/thread-7750-1-1.html

C# naudoja ICSharpCode.SharpZipLib.dll failams / aplankams suspausti ir išskleisti
https://www.itsvse.com/thread-3726-1-1.html
7-Zip yra failų archyvatorius su dideliu glaudinimo laipsniu. 7-Zip yra atvirojo kodo ir nemokama programa. Didžioji dalis kodo yra licencijuota pagal GNU LGPL. Kai kurios kodo dalys yra licencijuotos pagal BSD 3 sąlygas. Kai kurios kodo dalys taip pat turi unRAR licencijavimo apribojimus.

Parsisiųsti adresą:Hipersaito prisijungimas matomas., atsisiuntimo ir diegimo veiksmai praleidžiami (šis straipsnis įdiegtas kataloge :D:\360Downloads)

7-Zip komandų eilutės parametrai yra šie:


7-Zip 21.07 (x64) : Autorių teisės (c) 1999-2021 Igoris Pavlovas : 2021-12-26

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

<Commands>
  a : Pridėti failus į archyvą
  b : Lyginamasis indeksas
  d : Ištrinti failus iš archyvo
  e : Ištraukite failus iš archyvo (nenaudojant katalogų pavadinimų)
  h : Apskaičiuokite failų maišos reikšmes
  i : Rodyti informaciją apie palaikomus formatus
  l : Archyvo turinio sąrašas
  rn : Pervardykite failus archyve
  t : Tikrinti archyvo vientisumą
  u : Atnaujinkite failus į archyvą
  x : eXtract failai su visais keliais

<Switches>
  -- : Stabdymo jungikliai ir @listfile analizė
  -ai[r[-|0]]{@listfile|! pakaitos simbolis} : Įtraukti archyvus
  -ax[r[-|0]]{@listfile|! pakaitos simbolis} : eXclude archyvai
  -ao{a|s|t|u} : nustatyti perrašymo režimą
  -an : išjungti archive_name lauką
  -bb[0-3] : nustatyti išvesties žurnalo lygį
  -bd : išjungti eigos indikatorių
  -bs{o|e|p}{0|1|2} : nustatyti išvesties srautą išvesties/klaidos/eigos eilutei
  -BT : Rodyti vykdymo laiko statistiką
  -i[r[-|0]]{@listfile|! pakaitos simbolis} : Įtraukti failų pavadinimus
  -m{Parametrai} : nustatyti glaudinimo metodą
    -mmt[N] : nustatykite procesoriaus gijų skaičių
    -mx[N] : nustatykite suspaudimo lygį: -mx1 (greičiausias) ... -mx9 (ultra)
  -o{Katalogas} : nustatyti išvesties katalogą
  -p{Password} : nustatyti slaptažodį
  -r[-|0] : Pasikartoti pakatalogiai vardų paieškai
  -sa{a|e|s} : nustatyti archyvo pavadinimo režimą
  -scc{UTF-8| LAIMĖTI| DOS} : nustatyti simbolių rinkinį konsolės įvesties / išvesties
  -scs{UTF-8| UTF-16LE| UTF-16BE| LAIMĖTI| DOS| {id}} : nustatyti sąrašo failų simbolių rinkinį
  -scrc[CRC32| CRC64| SHA1| SHA256|*] : nustatyti x, e, h komandų maišos funkciją
  -sdel : ištrinti failus po suspaudimo
  -seml[.] : siųsti archyvą el. paštu
  -sfx[{name}] : Sukurti SFX archyvą
  -si[{name}] : nuskaityti duomenis iš stdin
  -slp : nustatyti didelių puslapių režimą
  -slt : rodyti l (sąrašo) komandos techninę informaciją
  -snh : saugoti kietąsias nuorodas kaip nuorodas
  -snl : saugoti simbolines nuorodas kaip nuorodas
  -sni : saugoti NT saugos informaciją
  -sns[-] : saugoti NTFS alternatyvius srautus
  -so: rašyti duomenis į stdout
  -spd : išjungti failų pavadinimų pakaitos atitikimą
  -spe: pašalinti dubliavimą šakninio aplanko ištraukti komandą
  -SPF: Naudokite visiškai kvalifikuotus failų kelius
  -ssc[-] : nustatyti jautraus atvejo režimą
  -sse : sustabdyti archyvo kūrimą, jei jis negali atidaryti įvesties failo
  -ssp : archyvuojant nekeiskite šaltinio failų paskutinės prieigos laiko
  -ssw : suspausti bendrinamus failus
  -stl : nustatyti archyvo laiko žymą iš naujausio modifikuoto failo
  -stm{HexMask} : nustatyti procesoriaus gijos giminingumo kaukę (šešioliktainis skaičius)
  -stx{Type} : neįtraukti archyvo tipo
  -t{Type} : Nustatyti archyvo tipą
  -u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] : Naujinimo parinktys
  -v{Size}[b|k|m|g] : Kurti tomus
  -w[{path}] : priskirti Darbo katalogą. Tuščias kelias reiškia laikiną katalogą
  -x[r[-|0]]{@listfile|! pakaitos simbolis} : eXclude failų pavadinimai
  -y : daryti prielaidą, kad taip visose užklausose
Suspauskite aplankus naudodami 7z

Komanda yra tokia:


Pridėjus parametrą -sdel, aplankas zh automatiškai ištrinamas, kai glaudinimas baigiamas. Išbandykime suspaustą failą naudodami WinRAR, kaip parodyta toliau:



Išpakuokite failą naudodami 7z

Komanda yra tokia:


Dekompresija baigiama, kaip parodyta paveikslėlyje žemiau:



.NET/C# iškviečia 7z dekompresiją per komandinę eilutę

Kaip naudoti .NET/C# kodą komandinei eilutei vykdyti? Kodas yra toks:

(Pabaiga)




Ankstesnis:65 šaltinio kodo atsisiuntimo svetainės
Kitą:[Tikroji kova]. NET/C# nustato metodo skirtąjį laiką
 Savininkas| Publikuota: 2022-4-30 17:49:29 |
e Išpakuokite failus (visi suspausti failai išskleidžiami į tą patį katalogą, neišlaikant pradinės katalogų struktūros)
# Išpakuokite failą į dabartinį katalogą
7z e archive.zip
# Išpakuokite failą į e:\testunzip katalogą
7z e archive.zip -oe:\testunzip
# Išpakuokite visus PNG failus į e:\testunzip katalogą
7z e archive.zip -oe:\testunzip *.png -r

x Išpakuokite failą (išlaikykite originalią katalogo struktūrą)
# Išpakuokite failą į dabartinį katalogą
7z x archive.zip
# Išpakuokite failą į e:\testunzip katalogą
7z x archive.zip -oe:\testunzip
# Išpakuokite visus PNG failus į e:\testunzip katalogą
7z x archive.zip -oe:\testunzip *.png -r

l Peržiūrėkite visų paketo failų sąrašą
7z l archive.zip

-ao Kaip tvarkomi failai tuo pačiu pavadinimu
# -aoa perrašo to paties pavadinimo failą
7z x archive.zip -AOA
# -aos Praleiskite to paties pavadinimo failą
# -aou pervadina archyvą tuo pačiu pavadinimu
# -aot pervadina failus ištrauktame kataloge tuo pačiu pavadinimu

d Ištrinkite paketo viduje esančius failus
# Ištrinkite visus failus su .bak priesaga archive.zip
7z d archive.zip *.bak -r

RN pervardija paketo viduje esantį failą
# Pervardykite failą 1.png 1_new.png 2.png aplanką\2_new.png
7z rn archive.7z 1.png 1_new.png 2.png aplankas\2_new.png
Publikuota: 2022-4-30 20:05:18 |
Išmokite mokytis.
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com