Vytvoření ZIP souboru ze souborů XML v .NET

Aspose.ZIP for .NET umožňuje aplikaci v C# vytvářet ZIP archiv ze souborů XML bez spouštění 7-Zipu, WinRARu nebo jiného lokálně instalovaného archivačního nástroje. Vytvořte objekt Archive, přidejte každý zdroj jako pojmenovanou položku a zavolejte Save, čímž vznikne výsledný balíček.

XML je textový, zdrojový nebo značkovací formát používaný ve vývojových a publikačních pracovní postup. Aspose.ZIP bere každý zdroj jako samostatnou položku archivu bez interpretace jeho obsahu: zachová původní bajty a zároveň řeší zabalení do ZIPu, nastavení komprese, organizaci adresářů, práci se streamy a volitelné šifrování. Tento postup se hodí pro předávání zdrojů, archivaci projektů, dokumentaci a integrační balíčky.

Příklad C#: komprese souboru XML do ZIP

Tento stručný příklad Aspose.ZIP přidá jeden soubor XML do nového archivu a uloží výsledek jako archived_result.zip. Proměnnou dir nastavte na adresář se zdrojovým souborem.

Komprese souborů XML - C#

var dir = "full directory path";
using (var arch = new Archive())
{
   arch.CreateEntry("filename.xml", dir+"file.xml");
   arch.Save(dir+"archived_result.zip");
}

Instalace Aspose.ZIP for .NET

Nainstalujte balíček Aspose.ZIP z NuGetu a přidejte na něj referenci v projektu .NET. Vytváření ZIPu probíhá přímo v aplikaci a nevyžaduje samostatně nainstalovaný archivační nástroj.

Package Manager Console

PM> Install-Package Aspose.Zip

Archivace jednoho souboru XML

Přidejte jeden zdrojový soubor .xml do nového Archive a uložte výsledek. Zvolte cílový název položky, pokud má stažitelný ZIP zobrazovat kratší nebo sjednocený název.

Sbalení více souborů XML

Před uložením zavolejte CreateEntry pro každý zdrojový soubor. Soubory z různých vstupních umístění můžete v ZIP archivu uspořádat pod jednotný adresář xml/.

Přidání souvisejících prostředků

Do balíčku přidejte soubor XML i související soubory: související zdrojové soubory, konfigurace, šablony, obrázky, testy, dokumentace nebo instrukce pro sestavení. Zachovejte relativní cesty a pojmenování, které očekává navazující pracovní postup.

Uložení nebo streamování balíčku

Hotový ZIP archiv uložte do lokálního souboru, vraťte ho z ASP.NET nebo ho odešlete přímo do objektového úložiště přes zapisovatelný stream. Rozvržení položek zůstane stejné pro každý cíl.

Jak vytvořit ZIP archiv ze souborů XML pomocí C#

  1. Nainstalujte Aspose.ZIP for .NET a přidejte referenci do projektu.
  2. Určete soubory XML a doprovodné soubory, které mají být v balíčku.
  3. Vytvořte objekt Archive pro nový ZIP kontejner.
  4. Zavolejte CreateEntry pro každý zdroj a nastavte jeho zamýšlenou cestu v archivu.
  5. Nastavte kompresi nebo šifrování, pokud to způsob doručení vyžaduje.
  6. Zavolejte Save s výstupní cestou nebo zapisovatelným streamem a archiv uvolněte.

Všechny požadované položky přidejte před uložením. Pro ručně sestavené balíčky použijte jednotlivá volání CreateEntry; pro připravený adresářový strom můžete použít CreateEntries.

Zabalení do ZIP nepřevádí formát XML

Zabalení do ZIP kód nespustí, neověří syntaxi, nevyřeší závislosti, neodstraní tajné údaje a nepřevede XML na spustitelný nebo publikační výstup. Po rozbalení se obnoví stejné bajty, které byly do archivu přidány, pokud aplikace soubor před archivací záměrně netransformuje.

Pokud potřebujete vnitřní obsah kontrolovat, upravovat, vykreslovat, validovat nebo převádět, použijte knihovnu určenou pro zdrojový a značkovací obsah. Aspose.ZIP použijte ve chvíli, kdy potřebujete existující soubor seskupit, přenést, uložit, komprimovat nebo chránit.

Přidání doprovodných souborů ke zdroji XML

V reálných dodávkách může být potřeba přiložit i související soubory, například: související zdrojové soubory, konfigurace, šablony, obrázky, testy, dokumentace nebo instrukce pro sestavení. Aspose.ZIP přidává pouze soubory, které aplikace předá, a automaticky nevyhledává závislosti specifické pro daný formát.

Shromážděte požadované prostředky před vytvořením archivu a dejte jim stabilní relativní cesty. Manifest nebo README může příjemci popsat verze, očekávaná umístění, kontrolní součty a postup obnovy.

Řízení cest a názvů v ZIP archivu pro soubory XML

Zdrojová cesta říká .NET, odkud má soubor číst; název položky určuje, kde se objeví v ZIP archivu. Lokální soubor tedy můžete vystavit například jako `xml/filename.xml`, aniž byste prozradili jeho skutečnou cestu na stroji.

Pro přenositelné cesty položek používejte lomítka dopředu. Odmítněte absolutní cesty, segmenty pro návrat do nadřazeného adresáře jako ../, prázdné názvy a neočekávané duplicity, pokud názvy přicházejí zvenčí aplikace.

Jakou kompresi čekat u souborů XML

Textové a XML formáty se obvykle komprimují velmi dobře díky opakování značek, klíčových slov a struktury. Binární podklady v balíčku výsledek ovlivní. Deflate je praktická výchozí volba kvůli široké kompatibilitě s nástroji pro ZIP, zatímco režim Store dává smysl, když je rychlost balení důležitější než další zmenšení.

Měřte na reprezentativních souborech místo slibování pevného poměru. Výslednou velikost ZIP archivu ovlivňuje velikost souboru, vnitřní struktura, opakování dat i doprovodné prostředky.

Ochrana ZIP archivu se soubory XML heslem

Aspose.ZIP umí chránit položky archivu tradičním ZipCrypto nebo šifrováním AES. Preferujte AES, pokud ho software příjemců podporuje; ZipCrypto používejte hlavně kvůli kompatibilitě se staršími nástroji.

Hesla získávejte z bezpečné konfigurace, nikdy je nevkládejte natvrdo do kódu ani do logů a předávejte je odděleně od archivu. Šifrování chrání ZIP při přenosu nebo uložení, ale nenahrazuje řízení přístupu k samotnému obsahu.

Doporučení pro produkční archivaci XML

- Před uložením ověřte, že existuje každý zdrojový i doprovodný soubor. - U nedůvěryhodných požadavků omezte počet souborů, velikost jednotlivých souborů, celkovou velikost vstupu a povolená umístění zdrojů. - Normalizujte názvy položek a zabraňte absolutním cestám nebo průchodu adresáři. - Pokud by částečný výstup škodil, zapisujte nejprve do dočasného cíle a publikujte až po úspěšném `Save`. - Pro odpovědi ASP.NET a přímé uploady do objektového úložiště používejte streamy. - Archivy a streamy uvolňujte deterministicky a nelogujte lokální cesty ani přihlašovací údaje.

Vytvořit ZIP ze souborů XML online

Potřebujete balíček bez psaní kódu? Použijte v prohlížeči bezplatný online nástroj pro vytvoření ZIP .

  Není potřeba desktopový archivační nástroj.
  Není potřeba nastavovat API ani psát C# kód.
  Nahrajte soubory XML a související soubory.
  Stáhněte vytvořený ZIP archiv.

Zdroje k Aspose.ZIP for .NET

Časté dotazy

1. Jak v C# vytvořím ZIP ze souboru XML?

Vytvořte Archive, zavolejte CreateEntry s názvem položky a cestou ke zdrojovému souboru XML a potom zavolejte Save s cílovou cestou ZIP souboru nebo výstupním streamem.

2. Mohu do jednoho ZIP archivu přidat více souborů XML?

Ano. Před uložením zavolejte CreateEntry pro každý zdrojový soubor a každé položce dejte v archivu jedinečný název.

3. Přidávají se související soubory automaticky?

Ne. Aspose.ZIP zabalí soubory předané aplikací, ale nevyhledává závislosti specifické pro daný formát. Každý požadovaný doprovodný soubor přidejte výslovně.

4. Převede nebo upraví vytvoření ZIP soubor XML?

Ne. Vytvoření ZIP zachová původní soubor jako položku archivu. Převod formátu nebo úprava obsahu je samostatná operace.

5. Lze ZIP obsahující soubory XML šifrovat?

Ano. Aspose.ZIP podporuje ochranu ZipCrypto i AES. Zvolte metodu šifrování podporovanou softwarem, kterým budou příjemci archiv otevírat.