文件

MPP 文件到 Excel 的转换 |使用 Java 将 Microsoft 项目文件转换为 XLS

项目管理的流行应用程序之一是 Microsoft Project,因为它能够组织、跟踪和维护项目计划。它们由项目经理、利益相关者和项目团队中的人员使用。创建任务、将它们分配给资源并定义它们的依赖关系后,您可能需要在涉众之间共享项目计划。所以为了查看这个文档,我们需要使用MS Project Professional或者其他配套软件。因此,我们可以考虑按照以下指定的步骤使用 Java 将 MPP 文件转换为 Excel

Microsoft 项目文件转换 API

Aspose.Tasks Cloud SDK for Java 提供创建、操作和导出 Microsoft Project 文件到 Excel、HTMLJPEGPDFXML PNG等。为了使用SDK,可以直接下载aspose-tasks-cloud.jar或者在maven构建的pom.xml中添加如下引用类型项目。

<repositories>
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-tasks-cloud</artifactId>
        <version>21.10.0</version>
    </dependency>
</dependencies>

此外,使用 SDK 的下一步是使用 GitHub 或 Google 帐户在 Aspose.Cloud 仪表板 上注册一个帐户,或者只需注册即可获取您的客户凭据。

在 Java 中将 MPP 文件转换为 Excel

让我们详细了解如何从云存储加载 MPP 文件并将 MS Project 导出到 Java 应用程序中的 excel。

  • 首先,创建 ApiClient 类的实例,同时将您的 Client ID 和 Client Secret 作为构造函数参数传递
  • 其次,创建一个以 ApiClient 对象为参数的 TasksApi 对象
  • 第三,创建一个 UploadFileRequest 对象,它将输入的 MPP 文件的名称作为参数
  • 调用 UploadFile(…) 方法将 MPP 文件上传到云存储
  • 下一步是实例化 GetTaskDocumentWithFormatRequest 的对象,我们在其中提供输入 MPP 文件的名称和 XLSX 作为输出格式
  • 最后,调用方法getTaskDocumentWithFormat(…)将MPP文件转换为Excel并将输出保存到云存储
// 完整的示例和数据文件,请访问 https://github.com/aspose-tasks-cloud/aspose-tasks-cloud-java
// 从 https://dashboard.aspose.cloud/ 获取客户端凭证

try {
    // 如果 baseUrl 为 null,TasksApi 使用默认的 https://api.aspose.cloud
    // 使用客户端凭据创建 ApiClient 对象
    ApiClient apiClient = new ApiClient("bbf94a2c-6d7e-4020-b4d2-b9809741374e", "1c9379bb7d701c26cc87e741a29987bb", null);
    
    // 创建 TasksApi 实例,同时将 ApiClient 对象作为参数传递
    TasksApi tasksApi = new TasksApi(apiClient);

    // 从本地驱动器加载输入 MPP 文件
    String localPath = "C:\\Users\\Home move plan(1).mpp";

    // 创建一个 UploadFileRequest 对象,同时提供输入 MPP 文件作为参数
    UploadFileRequest uploadRequest = new UploadFileRequest("source.mpp", new java.io.File(localPath), null);
    // 调用方法上传MPP文件到云存储
    tasksApi.uploadFile(uploadRequest);

    // 创建 MPP 文件转换对象,同时将输出格式指定为 XLSX
    GetTaskDocumentWithFormatRequest request = new GetTaskDocumentWithFormatRequest("source.mpp","XLSX",false,null, null);
 
    // 调用 API 将 Microsoft Project 文件转换为 Excel 格式 
    File result = tasksApi.getTaskDocumentWithFormat(request);

    // 在控制台中打印结果 excel 的名称
    System.out.println(result.getName());
    
    System.out.println("The conversion has been successful !");
}catch (Exception ex)
{
    System.out.println(ex.getStackTrace());
}

使用 cURL 命令将 Microsoft 项目文件导出到 Excel

在本节中,我们将使用 cURL 命令将 Microsoft 项目文件导出为 Excel 格式。生成的文件将下载到本地驱动器。但是,在我们初始化转换操作之前,我们需要根据客户端凭据生成一个 JWT 访问令牌。请在终端应用程序中执行以下命令生成 JWT 令牌:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

现在我们有了令牌,请执行以下命令将云存储中可用的 MPP 文件转换为 Excel 格式。

curl -v -X GET "https://api.aspose.cloud/v3.0/tasks/source.mpp/format?format=xlsx&returnAsZipArchive=false" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o Converted.xlsx
MPP 文件到 XLS 的转换预览

图片 1:- Microsoft Project 文件到 XLSX 的转换预览。

上例中使用的输入 MPP 文件可以从 Homemoveplan.mpp 下载,生成的 excel 可以从 Converted.xlsx 下载。

结论

本文介绍了使用 Java Cloud SDK 将 MPP 文件转换为 Excel 格式的步骤。我们注意到,只需调用一次 API,即可执行整个转换,我们还探索了在命令行终端上使用 cURL 命令将 Microsoft 项目文件导出为 excel 格式的灵活性。此外,SDK 的完整源代码也可以在 GitHub 上找到,您可以根据需要进行修改。

相关文章

我们强烈建议访问以下链接以了解