如何在java中转换OST文件PST文件?

时间:2015-12-07 08:19:17

标签: java

我有一个.ost文件脱机Outlook数据文件,我想在该文件中提取数据,如电子邮件,附件等。

为此我没有得到任何ost文件的直接解析器,所以我可以在其中提取数据。我有代码从.pst文件中提取数据。

所以根据我的要求,我想将.ost文件转换为java中的.pst文件。任何人的帮助将不胜感激。

我正在尝试关注代码,但它给了我例外,我没有得到任何解决方案。

package com.common;

import com.aspose.email.FileFormat;
import com.aspose.email.PersonalStorage;

public class ParseOST {

    public static void main(String[] args) {
        try {
            PersonalStorage ost = PersonalStorage.fromFile("F:/OSTFiles/OTest.ost");
            ost.saveAs("F:/OSTFiles/DuplicateOTest.pst", FileFormat.Pst);
            System.out.println("Done");
        } catch(Exception ex){
            ex.printStackTrace();
        }
    }
}

例外:

FormatNotSupportedException: The file is not in PST format
    [Ljava.lang.StackTraceElement;@86be70a
       at com.aspose.email.akv.c(SourceFile:670)
       at com.aspose.email.afi.j(SourceFile:1629)
       at com.aspose.email.afi.b(SourceFile:1280)
       at com.aspose.email.afi.<init>(SourceFile:162)
       at com.aspose.email.yy.<init>(SourceFile:43)
       at com.aspose.email.aku.<init>(SourceFile:123)
       at com.aspose.email.PersonalStorage.a(SourceFile:299)
       at com.aspose.email.PersonalStorage.fromFile(SourceFile:242)
       at com.aspose.email.PersonalStorage.fromFile(SourceFile:215)
       at com.common.ParseOST.main(ParseOST.java:12)  

1 个答案:

答案 0 :(得分:0)

第一句话:错误说“文件不是PST格式”,似乎代码没问题

如果你想使用这个商业产品: http://www.aspose.com/docs/display/emailjava/Load+and+Convert+Outlook+Offline+Folder+File+%28OST%29

PersonalStorage ost = PersonalStorage.FromFile("input.ost"))
ost.SaveAs("output.pst", FileFormat.Pst);

或者使用开源库:

处理PST文件: https://code.google.com/p/java-libpst/

这也与OST文件有关。

一些例子:http://contactvarunagarwal.blogspot.fr/2014/05/i-was-searching-many-times-how-to-read.html

希望有所帮助