在 Aspose.Tasks 中檢索 MS 專案日曆信息
內容
[
隱藏
]介紹
在本教學中,我們將探討如何使用 Aspose.Tasks for Java 函式庫從 Microsoft Project 檔案中擷取行事曆資訊。 Aspose.Tasks 提供了強大的功能來操作專案數據,包括存取日曆詳細信息,例如工作日和時間。
先決條件
在我們開始之前,請確保您具備以下條件:
- Java 程式設計的基礎知識。
- 您的系統上安裝了 Java 開發工具包 (JDK)。
- Java 函式庫的 Aspose.Tasks。您可以從以下位置下載:這裡.
導入包
首先,您需要在 Java 程式碼中匯入必要的套件才能使用 Aspose.Tasks 功能。
import com.aspose.tasks.Calendar;
import com.aspose.tasks.CalendarCollection;
import com.aspose.tasks.Project;
import com.aspose.tasks.WeekDay;
import com.aspose.tasks.WeekDayCollection;
現在讓我們將提供的範例分解為多個步驟以便更好地理解。
第1步:設定資料目錄
String dataDir = "Your Data Directory";
代替"Your Data Directory"
以及專案檔案目錄的路徑。
第 2 步:定義時間單位
long OneSec = 10000000;
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
這些常數表示以微秒為單位的時間單位。
步驟3:建立專案實例
Project project = new Project(dataDir + "project.mpp");
這一行建立了一個實例Project
類,使用專案文件的路徑對其進行初始化(project.mpp
)。
第 4 步:檢索日曆信息
CalendarCollection alCals = project.getCalendars();
在這裡,我們檢索項目文件中存在的日曆集合。
第 5 步:迭代日曆
for (Calendar cal : alCals) {
if (cal.getName() != null) {
//日曆資訊
System.out.println("Calendar UID : " + cal.getUid());
System.out.println("Calendar Name : " + cal.getName());
//迭代工作日
WeekDayCollection alDays = cal.getWeekDays();
for (WeekDay wd : alDays) {
double ts = wd.getWorkingTime(); //時間(以毫秒為單位)
double time = ts / (OneHour); //轉換為小時
if (wd.getDayWorking()) {
//顯示工作日和時間
System.out.print(wd.getDayType() + ":");
System.out.print("Working Time:" + time + " Hours");
System.out.println(", Ticks = " + ts);
}
}
}
}
此循環遍歷每個日曆並列印其 UID、名稱、工作日以及相應的工作時間。
第 6 步:顯示完成訊息
System.out.println("Process completed Successfully");
最後,將顯示一條訊息,指示該過程已完成。
結論
在本教程中,我們學習如何使用 Aspose.Tasks for Java 從 MS Project 檔案檢索日曆資訊。透過執行這些步驟,您可以有效地存取和操作 Java 應用程式中的專案資料。
常見問題解答
Q:我可以將 Aspose.Tasks 與其他程式語言一起使用嗎?
答:是的,Aspose.Tasks支援多種平台和程式語言,包括.NET、C++、Python 和 Java。
Q:Aspose.Tasks 是否有免費試用版?
答:是的,您可以從以下位置下載免費試用版:這裡.
Q:如何獲得 Aspose.Tasks 的支援?
答:您可以從 Aspose.Tasks 社群論壇獲得支持這裡.
Q:我可以購買 Aspose.Tasks 的臨時授權嗎?
答:是的,可以購買臨時許可證這裡.
Q:在哪裡可以找到 Aspose.Tasks 的詳細文件?
答:可以參考文檔這裡.