Четене и експортиране на Zimbra TGZ файлове

Zimbra е облачна имейл и колаборационна платформа, предоставяща имейл, контакти, календари, споделяне на файлове, задачи и съобщения – достъпни чрез Zimbra Web Client на всяко устройство.

Aspose.Email за Node.js чрез .NET позволява на разработчиците да четат, извличат и експортират данни от Zimbra TGZ резервни файлове, използвайки TgzReader клас. Лесно можете да достъпите всички съобщения, да преброите общия брой елементи и да експортирате съобщения, контакти или календарни данни от TGZ файлове в общи формати.

Четене на всички съобщения от Zimbra TGZ файл

Този TgzReader клас позволява да прочетете всички съобщения, съхранени в Zimbra TGZ резервен файл.

Следният пример демонстрира как да итерарате през всички съобщения и да покажете тяхната папка и тема.

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

Брой на общите елементи в Zimbra TGZ файл

Бързо можете да определите колко имейл елементи съществуват в TGZ резервно копие, използвайки getTotalItemsCount() метод на TgzReader клас.

Следният кодов пример ще ви покаже как да внедрите този метод във вашия проект:

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

Запазване на съобщения и структура на папки от Zimbra TGZ файл

Този exportTo() методът позволява да запазите всички съобщения от TGZ файл, като запазите оригиналната структура на папките. Това е полезно при възстановяване или миграция на данни от пощенската кутия.

Следният кодов пример демонстрира как да извлечете и експортирате всички Zimbra имейл съобщения от TGZ архивен файл, използвайки библиотеката 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}`);

Експорт на календар и контакти от Zimbra резервни файлове

Архивите от Zimbra TGZ могат да включват папки с контакти и календари. Можете да ги експортирате във формати VCard (.vcf) и iCalendar (.ics) използвайки същия exportTo() метод.

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