如何使用 MPXJ 库知道确切的 MS 项目版本

How to know the exact MS Project version using MPXJ Library

我需要知道在我的系统中上传的文件的确切 MS Project 版本。在 MPXJ 库中,ProjectProperties class 公开两个 apis - getApplicationVersion() getMppFileType() 但它们都是 return 一个整数。没有明确提到哪个数字映射到哪个版本。 mpxj 文档解释了 getMppFileType returns 12 用于 MS Project 2003 和 2007,14 用于 2010 和 2013。但是如何区分两者呢?是否有一个直接的 api 可以提供此信息?

遗憾的是,用于创建文件的 Microsoft Project 的确切版本似乎并未嵌入文件本身。目前,您最接近的是查看应用程序版本属性,即您要使用 ProjectProperties.getApplicationVersion() 方法。这是可能值的列表 return:

Project 98:   8
Project 2000: 9
Project 2002: 9
Project 2003: 9
Project 2007: 12
Project 2010: 14
Project 2013: 15
Project 2016: 16
Project 2019: 16