Čtení a export souborů Zimbra TGZ

Zimbra je cloudová e‑mailová a kolaborační sada, která poskytuje e‑mail, kontakty, kalendáře, sdílení souborů, úkoly a zprávy – vše přístupné prostřednictvím Zimbra Web Client na jakémkoli zařízení.

Aspose.Email pro Node.js přes .NET umožňuje vývojářům číst, extrahovat a exportovat data ze záložních souborů Zimbra TGZ pomocí TgzReader třída. Můžete snadno přistupovat ke všem zprávám, spočítat celkový počet položek a exportovat zprávy, kontakty nebo kalendářová data z TGZ souborů do běžných formátů.

Číst všechny zprávy ze souboru Zimbra TGZ

The TgzReader třída vám umožňuje číst všechny zprávy uložené v záložním souboru Zimbra TGZ.

Následující příklad demonstruje, jak projít všechny zprávy a zobrazit jejich umístění ve složce a předmět.

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.");

Spočítat celkový počet položek v souboru Zimbra TGZ

Pomocí můžete rychle zjistit, kolik e‑mailových položek se nachází v TGZ záloze pomocí getTotalItemsCount() metoda třídy TgzReader třída.

Následující ukázka kódu vám ukáže, jak implementovat tuto metodu ve vašem projektu:

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();

Uložit zprávy a strukturu složek ze souboru Zimbra TGZ

The exportTo() metoda vám umožní uložit všechny zprávy z TGZ souboru při zachování původní struktury složek. To je užitečné při obnově nebo migraci dat poštovní schránky.

Následující ukázka kódu demonstruje, jak pomocí knihovny Aspose.Email extrahovat a exportovat všechny e‑mailové zprávy Zimbra z TGZ archivu.

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}`);

Export kalendáře a kontaktů ze souborů záloh Zimbra

Zálohy Zimbra TGZ mohou obsahovat složky kontaktů a kalendářů. Tyto můžete exportovat do formátů VCard (.vcf) a iCalendar (.ics) pomocí stejného 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.");