-
Java
解析
Project
mpp
文件实用教程
编著:吴理琪
(wRitchie)
概述
:
MPP
指的是
< br>Microsoft
Office
Project<
/p>
文件。用于定制计划,
主要参数有任务名称,资源名称,工期,开
始时间,结束时间。工期
通过工作时间及开始时间结束时间推算出来
(工作时间:
每星期工作
几天,工作时间段为什么。可指定
特定的工作日,工作时间段可单独
设置)
。
MPXJ
类包提供创建、
读写
Mi
crosoft
Project
Exchange
(MPX)
文件,
Project
2002
和
2003 MSPDI XML
文件;与读取
Microsoft
Office Project 98/2000/ 2002/2003/2007/
2010
等
MPP
文件。
官网:
MPXJ
数据结构及关系图
:
一、
<
/p>
下载
mpxj
包:
/projects/mpxj/files/mpxj/Versi
on%204.0.0//download
注:下载链接可能不能下载,可另选镜像:
二、
使用
m
pxj
来解析
mpp
项目中所需的
p>
jar
包:
及其依
赖的
poi-*.*.jar
包,如下
图所示:
三、
代码
package ie;
.*;
import ception;
import ce;
import
ceAssignment;
import
import tFile;
import
import .*;
public class ParseProjectMpp {
/**
* @Data 2011-1-13
* @author
吴理琪
* @parammppFilePath
*/
public static void main(String[] args)
{
String mppFilePath =
File file = new
File(mppFilePath);
MPPReadermppRead = new MPPReader();
ProjectFilepf;
try {
pf
= (file);
n(
文件:
n(
文件绝对路径
:
jectFilePath());
ParseProjectMpp
ppm = new ParseProjectMpp();
List
rojectMpp(tasks);
}
catch (MPXJException e) {
tackTrace();
}
}
/**
*
遍历任务,解析
mpp
文件,并可进行相应该实际业务逻辑
*
* @param tasks
*/
public void
parseProjectMpp(List
n(
任务总数
:
.println(
任务名称
|
资源名称
|
开始时间
|
结束时间
|
完成百分比
|
任务层数
|
任务子级数
for (Task oneTask : tasks)
{
//
相关具体业务逻辑代码,如保存至数据库
...
//
本教程代码为简单,直接输入
n(queID()
+
+
e()
+
+
rt()
+
+
ish() +
+ centageComplete() +
+ lineLevel() +
+ lineNumber());
}
}
/**
*
获取资源
*
* @param task
* @return
资源名称
*/
@SuppressWarnings(
public String getResource(Task task) {
StringBufferbuf
= new StringBuffer();
List
ourceAssignments();
for
(ResourceAssignment
assignment
:
assignments)
{
Resource
resource = ource();
if (resource != null) {
(e()).append(
}
}
return ng();
}
}
运行结果
mpp
文件:
c:
Project
文件绝对路径
:
C:
项目
任务总数
: 12
ID
|
任务名称
|
资源名称
|
开始时间
|
结
束时间
|
完
assignments
=
-
-
-
-
-
-
-
-
-
上一篇:科技论文写作英语写作
下一篇:RIP技术介绍.