package mpx;
import java.util.Locale;
import net.sf.mpxj.DateRange;
import net.sf.mpxj.Day;
import net.sf.mpxj.Duration;
import net.sf.mpxj.FieldType;
import net.sf.mpxj.ProjectCalendar;
import net.sf.mpxj.ProjectCalendarHours;
import net.sf.mpxj.ProjectFile;
import net.sf.mpxj.ProjectHeader;
import net.sf.mpxj.Relation;
import net.sf.mpxj.RelationType;
import net.sf.mpxj.Resource;
import net.sf.mpxj.Task;
import net.sf.mpxj.TaskField;
import net.sf.mpxj.TimeUnit;
import net.sf.mpxj.mpx.MPXWriter;
import net.sf.mpxj.utility.NumberUtility;
public class CreateMPX
{
public CreateMPX()
{
}
public static void main(String args[])
{
try
{
create("d:\\output.MPX");
}
catch (Exception ex)
{
ex.printStackTrace(System.out);
}
}
private static void create(String filename) throws Exception
{
ProjectFile file =new ProjectFile();
Task task1 = file.addTask();
task1.setName("task1");
task1.setUniqueID(1);
task1.setID(1);
task1.setOutlineLevel(task0.getOutlineLevel()+1);
Task task11 = task1.addTask();
task11.setName("task1-1");
task11.setDuration(Duration.getInstance(6, TimeUnit.DAYS));
task11.setStart(java.sql.Date.valueOf("2008-8-21"));
task11.setFinish(java.sql.Date.valueOf("2008-8-26"));
task11.setPercentageComplete(NumberUtility.getDouble(90D));
task11.setUniqueID(2);
task11.setID(2);
task11.setResourceNames("one");
Task task12 = task1.addTask();
task12.setName("task12");
task12.setDuration(Duration.getInstance(5, TimeUnit.DAYS));
task12.setStart(java.sql.Date.valueOf("2008-8-27"));
task12.setFinish(java.sql.Date.valueOf("2008-8-31"));
task12.setResourceNames("two");
task12.setUniqueID(3);
task12.setID(3);
//前置关系
Relation r=task12.addPredecessor(task11);
r.setType(RelationType.FINISH_START);
r.setTaskUniqueID(task11.getUniqueID());
ProjectCalendar pc=file.addBaseCalendar();
//设置工作日历 这里设的周1-7全部工作,呵呵 如不设默认为5天工作制
pc.setName("压榨民工");
pc.setWorkingDay(Day.SUNDAY, true);
pc.setWorkingDay(Day.MONDAY, true);
pc.setWorkingDay(Day.TUESDAY, true);
pc.setWorkingDay(Day.WEDNESDAY, true);
pc.setWorkingDay(Day.THURSDAY, true);
pc.setWorkingDay(Day.FRIDAY, true);
pc.setWorkingDay(Day.SATURDAY, true);
ProjectCalendarHours h1=pc.addCalendarHours(Day.SUNDAY);
h1.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h1.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h2=pc.addCalendarHours(Day.MONDAY);
h2.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h2.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h3=pc.addCalendarHours(Day.TUESDAY);
h3.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h3.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h4=pc.addCalendarHours(Day.WEDNESDAY);
h4.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h4.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h5=pc.addCalendarHours(Day.THURSDAY);
h5.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h5.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h6=pc.addCalendarHours(Day.FRIDAY);
h6.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h6.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectCalendarHours h7=pc.addCalendarHours(Day.SATURDAY);
h7.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START1, ProjectCalendar.DEFAULT_END1));
h7.addDateRange(new DateRange (ProjectCalendar.DEFAULT_START2, ProjectCalendar.DEFAULT_END2));
ProjectHeader ph=file.getProjectHeader();
ph.setCalendarName(pc.getName());
MPXWriter writer = new MPXWriter();
//设置中文
writer.setLocale(Locale.CHINESE);
writer.write(file, filename);
}
}
分享到:
相关推荐
使用java的mpxj的jar包来生成mpx的project文件
MPXJ(Microsoft Project eXtended Java Library)是一个开源Java库,专门设计用来与Microsoft Project文件进行交互。它支持Microsoft Project 2000到2019的所有版本,能够读取、修改和创建.mpp文件,使得开发者可以...
java生成project形式的xml、mpp 将xml形式的Project文件转成 mpp 走过的弯路 1.Project 直接导出 mpp文件,没有办法自定义列。 2.jacob 导出mpp文件 jawin.dll只支持32位。 3.Aspose-Tasks-Java不收费的版本只能导出...
至于“压力传感器mpx4115”文件,这可能是MPX4115的datasheet或者与之相关的C库文件,其中包含了传感器的电气特性、接口信息、操作指南等重要信息。在实际项目中,开发者会参考这些资料来正确地连接和使用传感器。 ...
##### 2.1 气压传感器——MPX4105 MPX4105是一种高性能的压力传感芯片,由美国摩托罗拉公司研发。它具有良好的线性输出特性,能够将所受的气压变化转化为与之成正比的模拟电压输出。具体来说,MPX4105具备以下几个...
##### 2.1 MPX10DP简单介绍 - **基本概念**:MPX10DP是一种将压力转换为电压信号的硅半导体传感器。与其他类型的传感器相比,它具备体积小、重量轻、成本低以及性能稳定等优势。 - **特性概述**: - 零压力偏压...
转换完成后,用户就可以将生成的MPX文件导入到MP3播放器中,享受音乐带来的乐趣。 综上所述,这款针对老式MP3播放器的多媒体转换工具,不但解决了老款MP3播放器无法播放现代视频格式的问题,还扩展了其功能,使之...
ProjectViewer v3.7.0是一款专为项目管理人员设计的高效工具,它允许用户无需拥有原版的Microsoft Project即可查看、审阅和打印MS Project文件。这款软件的核心功能在于其强大的项目协作和远程访问能力,使得团队...
项目共计包含522个文件,其中SVG文件290个,JavaScript文件82个,Vue组件41个,PNG图片32个,mpx文件20个,JSON文件18个,Stylus样式表8个,Git忽略文件4个,Markdown文件4个,CSS样式4个。该系统旨在实现高效便捷的...
源程序使用Keil C语言编写,并生成hex文件导入到单片机中。 5.压力测试仪系统描述 压力测试仪系统描述了该系统的工作原理和流程,包括压力信号的输入、模数转换、数字信号的输出和LED显示等方面。 6. 线性区间...
在本项目中,我们探讨的是一个基于MPX4115压力传感器的自动检测系统设计。这个系统的核心是利用MPX4115传感器来采集压力数据,再通过AT89C51单片机进行数据处理和控制,最终通过LED共阳极显示器将压力值以可视化的...
在这个项目中,我们将重点讨论如何使用STM32F1与MPX4250压力传感器进行数据采集和处理。 MPX4250是一款高精度、低功耗的压力传感器,由美国Sensortechnics公司生产。这款传感器设计用于测量相对压力,其工作范围在...
本设计以51单片机为主控芯片,MPX4115作为气压监测,以MCP3204作为AD数模转换,并配以时钟芯片以及虚拟串口等,可成功实现气压监测系统设计与仿真,并实现以MPX4115为探测元件,结合单片机扩展电路组成气压监测系统...
在本项目中,我们主要探讨了如何设计一个带有报警功能的MPX4115气压计。MPX4115是一款精密的绝对压力传感器,广泛应用于气象、航空、汽车以及工业自动化等领域。它的核心功能是测量环境的压力,并将其转化为电信号。...
"mpx2010肺活量51程序" 指的是一种基于MPX2010传感器的、采用51系列单片机编程的肺活量测量系统。MPX2010是一款微型压力传感器,常用于测量呼吸气体的压力变化,从而计算出肺活量。51系列单片机是广泛应用的微处理器...
MPX系列硅压力传感器,特别是美国MOTOROLA(现为Freescale Semiconductor的一部分)生产的MPX系列传感器,便是该领域内的代表性产品之一。 MPX系列硅压力传感器以测量气压为主,可用于医疗器械、气体压力控制等众多...
安川机器人-MPX3500产品样本pdf,简介:安川机器人MOTOMAN-MPX3500 性能更加强悍的新型喷涂机器人! 可全方位安装(置地,壁挂,吊挂) 易用性更强: 最大动作范围 5095mm,可左右对称高密度设置。 丰富...
mpx4115压力和ds18b20温度LED显示,可精确0.1kpa,显示稳定,带预设值与报警电路,课切换压力与温度预设值显示。
【标题】:“基于MPX4115的数字压力测量仪的设计” ...文件“压力传感器mpx4115”可能包含了关于该传感器的详细数据手册、电路设计示例或者与之相关的代码资源,是深入学习和设计此类测量仪的重要参考资料。