Csharp/C#教程:C#中MPXJ库的示例分享


C#中MPXJ库的示例

在连接到Microsoft Project文件时,我正在寻找使用MPXJ库的任何C#代码示例。 有人可以发一个片段演示如何将.mpp文件中的表内容写入屏幕吗?

任何链接/参考的奖励积分!

谢谢!

〜丹

希望这会有所帮助。

首先,您需要打开您的项目文件:

ProjectReader reader = ProjectReaderUtility.getProjectReader(inputFile); ProjectFile projectFile = reader.read(inputFile); 

这假设您在inputFile字符串中有一个文件名。

下面的方法应该被视为伪代码(即我没有编译它,动摇它的bug等等,这不是我写过的最优雅的东西),但它说明了这种方法:

 public void dumpTables(ProjectFile file) { List tables = file.getTables(); Iterator iter = tables.iterator(); while (iter.hasNext()) { Table table = (Table)iter.next(); if (table.getResourceFlag()) { List resources = file.getAllResources(); Iterator resourceIter = resources.iterator(); while (resourceIter.hasNext()) { Resource resource = (Resource)iter.next(); List columns = table.getColumns(); Iterator columnIter = columns.iterator(); while (columnIter.hasNext()) { Column column = (Column)columnIter.next(); Object columnValue = resource.getCachedValue(column.getFieldType()); Console.Write(columnValue); Console.Write(","); } Console.WriteLine(); } } else { List tasks = file.getAllTasks(); // etc. as above } } } 

我们的想法是,您正在检索文件中存在的表的列表,以及每个表中是否为Task或Resource表的表。 在此基础上,您将获取任务或资源列表,迭代它,并为每个实例提取列值并显示它。 请注意,我没有尝试以任何特定方式订购任务或资源。 我会把它留给读者练习!

希望有所帮助!

乔恩

上述就是C#学习教程:C#中MPXJ库的示例分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/942981.html

(0)
上一篇 2021年11月13日
下一篇 2021年11月13日

精彩推荐