专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
LabView
求助用过MS Project的高手
2019-07-18 02:30
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
LabVIEW
7614
3
1494
怎样利用
labview
编程将MS Project中的信息读出来?
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
ganmeibo
2019-07-18 07:56
看到一个使用MPXJ API读取MS PROJECT 2007生成的MPP文件信息,测试代码如下:你参考下
package com.pmo.testcase;
import net.sf.mpxj.mpp.*;
import net.sf.mpxj.MPXJException;
import net.sf.mpxj.Resource;
import net.sf.mpxj.ResourceAssignment;
import net.sf.mpxj.Task;
import net.sf.mpxj.ProjectFile;
import java.util.List;
import java.io.*;
/**
*
@author
Matianyi
*
*/
public class mpxjtest {
/**
* @param args
* @throws MPXJException
*/
public static void main(String[] args) throws MPXJException {
// TODO Auto-generated method stub
File file = new File("D://软件开发.mpp");
MPPReader mppRead = new MPPReader();
ProjectFile pf = mppRead.read(file);
System.out.println("项目文件 : " + pf.getProjectFilePath());
List tasks = pf.getAllTasks();
mpxjtest mt = new mpxjtest();
System.out.println("总任务数: " + tasks.size());
System.out.println("ID|任务名|资源|开始时间|结束时间|完成百分比");
for (int i = 1; i < tasks.size(); i++) {
System.out.println(((Task) tasks.get(i)).getUniqueID() + "|"
+ ((Task) tasks.get(i)).getName() + "|"
+ mt.getResource((Task) tasks.get(i)) + "|"
+ ((Task) tasks.get(i)).getStart() + "|"
+ ((Task) tasks.get(i)).getFinish() + "|"
+ ((Task) tasks.get(i)).getPercentageComplete());
}
}
public String getResource(Task task) {
StringBuffer buf = new StringBuffer();
List assignments = task.getResourceAssignments();
for (int i = 0; i < assignments.size(); i++) {
ResourceAssignment assignment = (ResourceAssignment) assignments
.get(i);
Resource resource = assignment.getResource();
if (resource != null) {
buf.append(resource.getName()).append(" ");
}
}
return buf.toString();
}
}
加载中...
查看其它3个回答
一周热门
更多
>
相关问题
怎么利用公式波形产生所想要的波形
2 个回答
USBCAN-2A与PCI5121D的数据通信
1 个回答
labview调用c时遇到问题
1 个回答
大家帮小弟解决下问题,不胜感激
4 个回答
关于labview插值
1 个回答
相关文章
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
LabView
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
package com.pmo.testcase;
import net.sf.mpxj.mpp.*;
import net.sf.mpxj.MPXJException;
import net.sf.mpxj.Resource;
import net.sf.mpxj.ResourceAssignment;
import net.sf.mpxj.Task;
import net.sf.mpxj.ProjectFile;
import java.util.List;
import java.io.*;
/**
* @author Matianyi
*
*/
public class mpxjtest {
/**
* @param args
* @throws MPXJException
*/
public static void main(String[] args) throws MPXJException {
// TODO Auto-generated method stub
File file = new File("D://软件开发.mpp");
MPPReader mppRead = new MPPReader();
ProjectFile pf = mppRead.read(file);
System.out.println("项目文件 : " + pf.getProjectFilePath());
List tasks = pf.getAllTasks();
mpxjtest mt = new mpxjtest();
System.out.println("总任务数: " + tasks.size());
System.out.println("ID|任务名|资源|开始时间|结束时间|完成百分比");
for (int i = 1; i < tasks.size(); i++) {
System.out.println(((Task) tasks.get(i)).getUniqueID() + "|"
+ ((Task) tasks.get(i)).getName() + "|"
+ mt.getResource((Task) tasks.get(i)) + "|"
+ ((Task) tasks.get(i)).getStart() + "|"
+ ((Task) tasks.get(i)).getFinish() + "|"
+ ((Task) tasks.get(i)).getPercentageComplete());
}
}
public String getResource(Task task) {
StringBuffer buf = new StringBuffer();
List assignments = task.getResourceAssignments();
for (int i = 0; i < assignments.size(); i++) {
ResourceAssignment assignment = (ResourceAssignment) assignments
.get(i);
Resource resource = assignment.getResource();
if (resource != null) {
buf.append(resource.getName()).append(" ");
}
}
return buf.toString();
}
}
一周热门 更多>