Tworzenie pliku ZIP z plików DOC w .NET

Biblioteka Aspose.ZIP for .NET pozwala aplikacji C# utworzyć archiwum ZIP z plików DOC bez uruchamiania 7-Zip, WinRAR ani innego programu komputerowego. Utwórz obiekt Archive, dodaj każdy plik jako wpis, dołącz wymagane zasoby i wywołaj Save, aby zapisać gotowe archiwum.

API pakuje wyłącznie wskazane pliki i nie zmienia takich elementów jak tekst, formatowanie, osadzone obiekty, metadane i wewnętrzna struktura dokumentu. Dzięki temu dokument wraz z materiałami dodatkowymi można przekazać jako jeden przenośny pakiet bez naruszania danych źródłowych.

Przykład C#: kompresowanie pliku DOC do ZIP

Ten zwięzły przykład dodaje jeden plik DOC do nowego archiwum i zapisuje wynik jako archived_result.zip. Ustaw dir na katalog zawierający plik źródłowy.

Kompresowanie plików DOC — C#

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

Instalowanie Aspose.ZIP for .NET

Zainstaluj pakiet NuGet Aspose.ZIP i dodaj odwołanie do niego w projekcie .NET. Archiwum jest tworzone wewnątrz procesu aplikacji, więc osobny program ZIP nie jest potrzebny.

Konsola Menedżera pakietów

PM> Install-Package Aspose.Zip

Archiwizowanie jednego pliku DOC

Dodaj jeden plik źródłowy w formacie DOC do nowego obiektu Archive i zapisz wynik. Nadaj wpisowi czytelną nazwę, jeśli plik ZIP przeznaczony do pobrania ma pokazywać prostszą lub ujednoliconą nazwę.

Pakowanie wielu plików DOC

Wywołaj CreateEntry dla każdego pliku DOC przed zapisaniem archiwum. Pliki z różnych lokalizacji źródłowych można uporządkować we wspólnym katalogu documents/ wewnątrz ZIP.

Pakowanie plików DOC z zasobami dodatkowymi

Dodaj pliki DOC razem z takimi materiałami jak załączniki, czcionki, powiązane multimedia, podpisy i pliki README. Zachowaj względne ścieżki oczekiwane przez proces odbiorcy, aby pakiet był gotowy do użycia po rozpakowaniu.

Zapisywanie lub przesyłanie pakietu DOC

Zapisz ukończony ZIP w pliku lokalnym, wyślij go w odpowiedzi ASP.NET albo przekaż bezpośrednio do magazynu w chmurze przez strumień z możliwością zapisu. Struktura i nazwy wpisów pozostają takie same niezależnie od miejsca docelowego.

Jak utworzyć archiwum ZIP z plików DOC w C#

  1. Zainstaluj Aspose.ZIP for .NET i dodaj odwołanie do pakietu.
  2. Określ pliki DOC oraz wszystkie zasoby, które powinny znaleźć się w pakiecie.
  3. Utwórz instancję Archive dla nowego kontenera ZIP.
  4. Wywołaj CreateEntry dla każdego pliku źródłowego i przypisz mu docelową ścieżkę w archiwum.
  5. Skonfiguruj kompresję lub szyfrowanie, jeśli wymaga tego sposób dostarczenia.
  6. Wywołaj Save ze ścieżką wyjściową lub strumieniem z możliwością zapisu, a następnie prawidłowo zwolnij zasoby.

Dodaj wszystkie planowane wpisy przed zapisaniem. Metoda CreateEntries może rekurencyjnie dołączyć przygotowane drzewo katalogów, natomiast osobne wywołania CreateEntry dają większą kontrolę nad nazwami i wyborem plików.

Pakowanie do ZIP nie konwertuje formatu DOC

Utworzenie archiwum ZIP z pliku DOC jest operacją archiwizacji, a nie konwersją. Plik `.doc` zachowuje format DOC, a po rozpakowaniu odzyskiwane są te same bajty. Aspose.ZIP nie interpretuje ani nie przepisuje takich danych jak tekst, formatowanie, osadzone obiekty, metadane i wewnętrzna struktura dokumentu.

Jeżeli celem jest konwersja plików DOC do PDF, DOCX lub HTML, użyj wyspecjalizowanej biblioteki konwersji. Ta metoda tworzenia ZIP służy do grupowania, przesyłania, przechowywania i ochrony istniejących plików.

Dołączanie plików powiązanych z DOC

Kompletny pakiet DOC może oprócz pliku głównego zawierać załączniki, czcionki, powiązane multimedia, podpisy i pliki README. Aspose.ZIP traktuje każdy element jako osobny wpis i nie analizuje pliku DOC w celu automatycznego wykrywania zależności. Aplikacja powinna ustalić wymagane zasoby i dodać je jawnie.

Dodaj zewnętrzne czcionki, obrazy lub załączniki, jeżeli dokument odwołuje się do nich poza samym plikiem. Przed utworzeniem archiwum sprawdź obecność wszystkich wymaganych elementów i zachowaj względny układ oczekiwany przez oprogramowanie odbiorcy.

Kontrolowanie ścieżek i nazw w pakiecie ZIP zawierającym pliki DOC

Ścieżka źródłowa wskazuje platformie .NET, skąd odczytać plik, a nazwa wpisu określa jego położenie w ZIP. Lokalny plik z dowolnego katalogu roboczego można zatem zapisać jako `documents/plik.doc` bez ujawniania lokalnej ścieżki.

W przenośnych ścieżkach ZIP używaj ukośników, konsekwentnie stosuj wielkie i małe litery i odrzucaj ścieżki bezwzględne oraz segmenty wskazujące katalog nadrzędny, takie jak ../. Sprawdzaj też zduplikowane nazwy, gdy pliki pochodzą z różnych katalogów. Czytelny pakiet zwykle zawiera katalog głównych danych, katalog zasobów oraz plik README.txt na najwyższym poziomie.

Oczekiwany stopień kompresji plików DOC

Zwykły tekst może kompresować się znacznie; nowoczesne pliki Office i PDF są często już skompresowane i zmniejszają się tylko nieznacznie. Nawet przy niewielkiej oszczędności miejsca ZIP nadal zapewnia jeden plik do przesłania, określoną strukturę katalogów, informacje ułatwiające kontrolę integralności i opcjonalną ochronę hasłem.

Deflate jest praktycznym ustawieniem domyślnym zapewniającym szeroką zgodność. Tryb bez kompresji może być lepszy, gdy liczy się szybkość pakowania, a większość wpisów jest już skompresowana. Wydajność należy mierzyć na reprezentatywnych pakietach zamiast zakładać jeden współczynnik dla wszystkich plików DOC.

Ochrona archiwum ZIP z plikami DOC za pomocą hasła

Poufne wpisy można zabezpieczyć tradycyjnym algorytmem ZipCrypto albo szyfrowaniem AES. Wybierz AES, gdy obsługuje go oprogramowanie odbiorcy; ZipCrypto stosuj tylko wtedy, gdy najważniejsza jest zgodność ze starszymi narzędziami.

Hasła pobieraj z bezpiecznej konfiguracji i nigdy nie zapisuj ich w kodzie źródłowym ani dziennikach. Przekazuj hasło innym kanałem niż archiwum i przed dystrybucją potwierdź, że odbiorca może użyć wybranej metody szyfrowania.

Wskazówki produkcyjne dla archiwów DOC

- Przed rozpoczęciem sprawdź, czy istnieją wszystkie pliki źródłowe i zasoby dodatkowe. - Dla niezaufanych żądań ogranicz liczbę plików, rozmiar pojedynczego pliku, łączny rozmiar wejścia i dozwolone lokalizacje. - Normalizuj oraz weryfikuj nazwy wpisów, aby nie dopuścić do niebezpiecznych ścieżek podczas rozpakowywania. - Gdy częściowy wynik byłby szkodliwy, zapisuj do lokalizacji tymczasowej i publikuj archiwum dopiero po powodzeniu metody `Save`. - Używaj strumienia z możliwością zapisu przy zwracaniu archiwum ZIP z ASP.NET lub wysyłaniu go bezpośrednio do magazynu obiektowego. - Zawsze jawnie zwalniaj zasoby archiwów i strumieni; informacje o brakujących zależnościach zapisuj bez ujawniania danych poufnych ani ścieżek lokalnych. - Ustal stałą kolejność wpisów i znaczniki czasu, jeżeli kompilacja wymaga powtarzalnego wyniku.

Tworzenie ZIP z plików DOC online

Potrzebujesz pakietu bez pisania kodu? Użyj bezpłatnego internetowego kreatora ZIP w przeglądarce.

  Nie jest wymagany program do archiwizacji na komputerze.
  Nie jest wymagana konfiguracja API ani kod C#.
  Prześlij pliki DOC i powiązane zasoby.
  Pobierz utworzone archiwum ZIP.

Materiały dotyczące Aspose.ZIP for .NET

Często zadawane pytania

1. Jak utworzyć plik ZIP z pliku DOC w C#?

Utwórz obiekt Archive, wywołaj CreateEntry z nazwą wpisu i ścieżką do pliku DOC, a następnie wywołaj Save ze ścieżką docelową lub strumieniem.

2. Czy mogę dodać wiele plików DOC do jednego archiwum ZIP?

Tak. Wywołaj CreateEntry dla każdego pliku przed zapisaniem i nadaj każdemu wpisowi unikatową nazwę w archiwum.

3. Czy powiązane pliki są dodawane automatycznie?

Nie. Aspose.ZIP pakuje pliki wskazane przez aplikację, lecz nie analizuje formatu DOC w celu znalezienia zależności. Każdy wymagany zasób dodaj jawnie.

4. Czy utworzenie ZIP konwertuje DOC do innego formatu?

Nie. Plik DOC pozostaje w ZIP bez zmian. Konwersja do PDF, DOCX lub HTML jest osobną operacją.

5. Czy archiwum ZIP zawierające pliki DOC można zaszyfrować?

Tak. Aspose.ZIP obsługuje ochronę hasłem za pomocą ZipCrypto i AES. Wybierz metodę obsługiwaną przez oprogramowanie używane przez odbiorców do rozpakowania archiwum.