Convert PST or OST document contents to different formats
GroupDocs.Conversion provides flexible API to control conversion of documents that contains other documents. The following code snippet shows how to convert each content of OST document to different format based on content type:
var index = 1;
LoadOptions LoadOptionsProvider(FileType sourceType)
{
if (sourceType == PersonalStorageFileType.Ost)
{
return new PersonalStorageLoadOptions
{
ConvertOwned = true,
ConvertOwner = false,
Folder = @"Root - Mailbox",
Depth = 2
};
}
return null;
}
Stream ConvertedStreamProvider(FileType targetType)
{
string outputFile = $"converted-{index++}.{targetType.Extension}"
return new FileStream(outputFile, FileMode.Create);
}
ConvertOptions ConvertOptionsProvider(string sourceDocumentName, FileType sourceType)
{
if (sourceType == EmailFileType.Msg)
{
return new PdfConvertOptions();
}
return new WordProcessingConvertOptions();
}
using (var converter = new Converter("sample.ost", LoadOptionsProvider))
{
converter.Convert(ConvertedStreamProvider, ConvertOptionsProvider);
}
This functionality is introduced in v20.6