
如何使用 .NET REST API 將 MS Project (MPP) 轉換為 Excel。
MS Project 檔案(MPP)廣泛用於以結構化格式管理複雜的專案規劃、時間表、資源和任務。但是,MPP 檔案是專有的,需要特定軟體(如 Microsoft Project)才能檢視和編輯。因此,透過將 MPP 轉換為 XLSX 可以實現更廣泛的存取性,使沒有 MS Project 的利害關係人可以更輕鬆地使用 Excel 的高級功能來查看、操作和分析專案資料。
MPP 到 Excel 轉換 API
Aspose.Tasks Cloud SDK for .NET 只需幾行程式碼即可簡化 MS Project (MPP) 檔案到 Excel (XLSX) 格式的轉換。 .NET Cloud SDK 提供高效能、準確性和靈活性,讓您可以輕鬆地將 MPP 到 Excel 的轉換功能整合到您的應用程式中,而無需使用 MS Project 等附加軟體。
為了在我們的專案中使用 SDK,首先我們需要在 NuGet 套件管理器中搜尋“Aspose.Tasks-Cloud”,然後點擊“新增套件”按鈕。這會將 SDK 引用新增到您的專案中。其次,從 雲端儀表板 取得您的客戶端憑證。
如果您沒有現有帳戶,只需按照快速入門指南中的說明建立免費帳戶。
使用 C# .NET 將 MS Project 匯出到 Excel
在本節中,我們將使用 API 自動提取專案數據,包括任務、資源和時間表,並將其轉換為結構化的 Excel 格式。
以下詳細說明如何使用 C# .NET 執行 MPP 到 Excel 的轉換。
TasksApi tasksApi = new TasksApi(clientSecret, clientID);
建立 TasksApi 類別的對象,同時傳遞客戶端憑證作為輸入參數。
var saveOptionsSerialized = "{ \"TextDelimiter\":\"Comma\", \"IncludeHeaders\":false,\"NonExistingTestProperty\":false," +
"\"View\":{ \"Columns\":[{Type:\"GanttChartColumn\",\"Name\":\"TestColumn1\",\"Property\":\"Name\",\"Width\":120}," +
"{Type:\"GanttChartColumn\",\"Name\":\"TestColumn2\",\"Property\":\"Duration\",\"Width\":120}]}}";
建立 SaveOptions 實例,我們在其中定義轉換操作的自訂屬性。
tasksApi.PostTaskDocumentWithFormat(new PostTaskDocumentWithFormatRequest(){.....}
呼叫API開始轉換操作。此方法需要輸入 MPP 檔案的名稱和 SaveOptions 實例作為參數。
saveToDisk(finalResponse, resultant);
最後,使用自訂方法將產生的工作簿(以流實例形式傳回)儲存到本機儲存。
// 有關更多範例,請造訪 https://github.com/aspose-tasks-cloud/aspose-tasks-cloud-dotnet
// 從 https://dashboard.aspose.cloud/ 取得客戶端憑證
string clientSecret = "XXXXXXXXXXXXXXXX";
string clientID = "XXXXXXXXXXXXX-XXXXXX-4be6-be35-ff5c3a6aa4a2";
// 建立 TasksApi 類別的實例
TasksApi tasksApi = new TasksApi(clientSecret, clientID);
// 要載入的輸入 MS Project 檔案的名稱
String inputFile = "Home move plan.mpp";
// 產生的 Excel 檔案的名稱
String resultant = "resultant.xlsx";
// SaveOptions 參數是 JSON 序列化的表示式
// Aspose.Tasks 的 SaveOptions 類別或其特定格式的繼承者(如 CsvOptions 等):
var saveOptionsSerialized = "{ \"TextDelimiter\":\"Comma\", \"IncludeHeaders\":false,\"NonExistingTestProperty\":false," +
"\"View\":{ \"Columns\":[{Type:\"GanttChartColumn\",\"Name\":\"TestColumn1\",\"Property\":\"Name\",\"Width\":120}," +
"{Type:\"GanttChartColumn\",\"Name\":\"TestColumn2\",\"Property\":\"Duration\",\"Width\":120}]}}";
// 從包含 JSON 的字串實例填入 JObject
var saveOptions = JObject.Parse(saveOptionsSerialized);
// 呼叫 API 使用 SaveOptions 實例將 MS Project 匯出為 Excel 格式
var finalResponse = tasksApi.PostTaskDocumentWithFormat(new PostTaskDocumentWithFormatRequest()
{
SaveOptions = saveOptions,
Format = ProjectFileFormat.Xlsx,
Name = inputFile,
ReturnAsZipArchive = false
});
// 將產生的 Excel 工作表儲存在本機磁碟機上
saveToDisk(finalResponse, resultant);
// 我們自訂的方法將流內容儲存到本機磁碟機上的 Excel 檔案中
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
可以從 Home move plan.mpp 和 resultant.xlsx 下載上述範例中輸入的 MPP 檔案和產生的結果 Excel 工作簿。
MPP 到 Excel 轉換的預覽。
使用 cURL 指令將 MPP 轉換為 XLSX
使用 Aspose.Tasks Cloud 和 cURL 指令將 MS Project (MPP) 檔案轉換為 XLSX,提供了一種簡化的、獨立於平台的方法。此方法對於自動化任務、與 Web 服務的整合以及在因其簡單性和效率而優先使用 REST API 的環境中工作時特別有益。
此方法的第一步是執行以下命令時產生 JWT 存取權令牌:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=XXXXXX-XXXXXXX-XXXXXXX-be54-33012487e783&client_secret=XXXXXXXXXXXXXXXXXXXXXXXX" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
一旦我們有了 JWT 令牌,請執行以下命令將 MS Project (MPP) 檔案匯出為 XLSX 格式。
curl -v -X GET "https://api.aspose.cloud/v3.0/tasks/{inputFile}/format?format=xlsx&returnAsZipArchive=false" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o resultant.xlsx
將「inputFile」替換為雲端儲存中已有的輸入 MS Project 檔案的名稱,並將「accessToken」替換為上面產生的 JWT 存取權令牌。
免費 MPP 到 XLSX 轉換器
為了見證 Aspose.Cloud REST API 的驚人功能,您可以考慮嘗試我們的免費 MPP 到 XLSX 轉換器。
如何使用 .NET REST API 將 MS Project (MPP) 轉換為 Excel。
結論
總而言之,將 MS Project (MPP) 檔案轉換為 Excel 格式在可存取性、資料分析和協作方面具有顯著優勢。我們鼓勵您嘗試我們的雲端 API,以獲得流暢、高效的轉換體驗。
無論是使用功能強大的 Aspose.Tasks Cloud SDK for .NET 還是利用 cURL 命令進行直接 API 交互,這兩種方法都簡化了轉換過程並實現與現代工作流程的無縫整合。
有用的連結
— 現場演示
相關文章
我們強烈建議您造訪以下部落格: