Läs och exportera Zimbra TGZ‑filer

Zimbra är en molnbaserad e‑post- och samarbetssvit som erbjuder e‑post, kontakter, kalendrar, fildelning, uppgifter och meddelanden – allt åtkomligt via Zimbra Web Client på vilken enhet som helst.

Aspose.Email för Node.js via .NET gör det möjligt för utvecklare att läsa, extrahera och exportera data från Zimbra TGZ‑säkerhetskopior med hjälp av TgzReader klass. Du kan enkelt komma åt alla meddelanden, räkna totala objekt och exportera meddelanden, kontakter eller kalenderdata från TGZ‑filer till vanliga format.

Läs alla meddelanden från en Zimbra TGZ‑fil

Den TgzReader klass låter dig läsa alla meddelanden som lagras i en Zimbra TGZ‑säkerhetskopia.

Följande exempel visar hur du itererar igenom alla meddelanden och visar deras mappplats och ämne.

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

Räkna totala objekt i en Zimbra TGZ‑fil

Du kan snabbt bestämma hur många e‑postobjekt som finns i en TGZ‑säkerhetskopia med hjälp av getTotalItemsCount() metod för TgzReader klass.

Följande kodexempel visar hur du implementerar denna metod i ditt projekt:

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

Spara meddelanden och mappstruktur från en Zimbra TGZ‑fil

Den exportTo() metoden låter dig spara alla meddelanden från en TGZ‑fil samtidigt som den ursprungliga mappstrukturen bevaras. Detta är användbart vid återställning eller migrering av brevlådedata.

Följande kodexempel visar hur du extraherar och exporterar alla Zimbra‑e‑postmeddelanden från en TGZ‑arkivfil med hjälp av Aspose.Email‑biblioteket.

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

Exportera kalender och kontakter från Zimbra‑säkerhetskopieringsfiler

Zimbra TGZ‑säkerhetskopior kan innehålla kontakt- och kalendermappar. Du kan exportera dessa till VCard (.vcf) och iCalendar (.ics)-format med samma exportTo() metod.

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