Odczyt i eksport plików Zimbra TGZ

Zimbra to oparta na chmurze platforma poczty i współpracy, oferująca e‑mail, kontakty, kalendarze, udostępnianie plików, zadania i komunikację – wszystko dostępne przez Zimbra Web Client na dowolnym urządzeniu.

Aspose.Email dla Node.js via .NET umożliwia programistom odczyt, wyodrębnianie i eksport danych z plików kopii zapasowych Zimbra TGZ przy użyciu TgzReader klasa. Możesz łatwo uzyskać dostęp do wszystkich wiadomości, policzyć wszystkie elementy oraz eksportować wiadomości, kontakty lub dane kalendarza z plików TGZ do popularnych formatów.

Odczytaj wszystkie wiadomości z pliku Zimbra TGZ

Ten TgzReader klasa umożliwia odczyt wszystkich wiadomości przechowywanych w pliku kopii zapasowej Zimbra TGZ.

Poniższy przykład demonstruje, jak iterować przez wszystkie wiadomości i wyświetlać ich lokalizację folderu oraz temat.

const asposeemail = require('@aspose/email');
const fs = require('fs');

// Path to the Zimbra TGZ file
const tgzPath = "ZimbraSample.tgz";

// Create a TgzReader instance
const reader = new asposeemail.TgzReader(tgzPath);

// Read and display all messages
while (reader.readNextMessage()) {
    const directoryName = reader.currentDirectory;
    console.log("Directory:", directoryName);

    const message = reader.currentMessage;
    console.log("Subject:", message.subject);
}

reader.dispose();
console.log("All messages read successfully from the Zimbra TGZ file.");

Policz wszystkie elementy w pliku Zimbra TGZ

Możesz szybko określić, ile elementów e‑mail znajduje się w kopii zapasowej TGZ, używając getTotalItemsCount() metoda TgzReader klasa.

Poniższy przykład kodu pokaże, jak zaimplementować tę metodę w Twoim projekcie:

const asposeemail = require('@aspose/email');

const tgzFile = "ZimbraSample.tgz";
const reader = new asposeemail.TgzReader(tgzFile);

const totalCount = reader.getTotalItemsCount();
console.log(`Total items in TGZ file: ${totalCount}`);

reader.dispose();

Zapisz wiadomości i strukturę folderów z pliku Zimbra TGZ

Ten exportTo() metoda umożliwia zapis wszystkich wiadomości z pliku TGZ, zachowując pierwotną strukturę folderów. Jest to przydatne przy przywracaniu lub migracji danych skrzynki pocztowej.

Poniższy przykład kodu demonstruje, jak wyodrębnić i wyeksportować wszystkie wiadomości e‑mail Zimbra z archiwum TGZ przy użyciu biblioteki Aspose.Email.

const asposeemail = require('@aspose/email');

const tgzFile = "ZimbraSample.tgz";
const outputDir = "Output/Zimbra/";

const reader = new asposeemail.TgzReader(tgzFile);
reader.exportTo(outputDir);

reader.dispose();
console.log(`All Zimbra messages exported to: ${outputDir}`);

Eksport kalendarza i kontaktów z plików kopii zapasowych Zimbra

Kopie zapasowe Zimbra TGZ mogą zawierać foldery kontaktów i kalendarzy. Możesz je wyeksportować do formatów VCard (.vcf) i iCalendar (.ics) przy użyciu tego samego exportTo() metoda.

const asposeemail = require('@aspose/email');

const tgzFile = "ZimbraBackup.tgz";
const outputPath = "Output/ZimbraData/";

const reader = new asposeemail.TgzReader(tgzFile);

// Contacts can be found in "Contacts" and "Emailed Contacts" folders.
// Calendar entries can be found in the "Calendar" folder.
reader.exportTo(outputPath);

reader.dispose();
console.log("Zimbra calendar and contacts exported successfully.");