2012-07-10 88 views
3

我需要從運行在Python 2.7上的Python應用程序中讀取Microsoft Project Plan(.mpp文件)。Python中的.mpp文件2.7

沒有得到相同的任何資源或指針在網絡上。

任何想法?

回答

3
  1. 您需要安裝pywin3(適用於Windows擴展的Python)。
  2. 您可以對.mpp文件進行操作。

例子:

import win32com.client 

doc = 'C:\\Project1.mpp' 
try: 
    mpp = win32com.client.Dispatch("MSProject.Application") 
    mpp.Visible = 1 
    try: 
    mpp.FileOpen(doc) 
    proj = mpp.ActiveProject 
    print proj.BuiltinDocumentProperties(11), ",", proj.BuiltinDocumentProperties(12) 
    except Exception, e: 
    print "Error", e 
    mpp.FileSave() 
    mpp.Quit() 
except Exception, e: 
    print "Error opening file",e 
+0

如果OP不使用Windows或安裝了Project,該怎麼辦? – darkphoenix 2012-07-10 17:06:48

+0

實際上,如果您使用的是Windows以外的其他操作系統,則無法解決問題。也許在Linux或類似的地方使用WINE。但我建議在Linux開發環境(或Mac)中嘗試開發 中特定於Windows的代碼,爲自己的背後創建一個標杆。 – fsenart 2012-07-10 19:11:02

+0

當你說如果項目已安裝時,你是什麼意思?你想處理.mpp文件不是嗎? – fsenart 2012-07-10 19:11:34

2

您可能會發現,你可以達到你所需要的使用MPXJ雖然你要麼需要使用一個基於JVM的Python(如Jython中)與Java版本的工作或者基於CLR的Python(例如IronPython或Python.Net)來使用庫的.Net版本,或者您需要使用橋接庫(例如JPype)。