【发布时间】:2011-07-18 00:28:41
【问题描述】:
在过去的一个月里,我学习了如何在 XNA 中使用 XML 文件,方法是将它们添加到内容文件夹(或 XNA 4 中的项目)并在 LoadContent 方法中加载它们。 我想知道是否可以以同样的方式加载一个外部 XML 文件,一个不在内容项目中的“新”文件。
干杯。
【问题讨论】:
标签: xml path xna load external
在过去的一个月里,我学习了如何在 XNA 中使用 XML 文件,方法是将它们添加到内容文件夹(或 XNA 4 中的项目)并在 LoadContent 方法中加载它们。 我想知道是否可以以同样的方式加载一个外部 XML 文件,一个不在内容项目中的“新”文件。
干杯。
【问题讨论】:
标签: xml path xna load external
您可以使用IntermediateSerializer (MSDN) - 这正是 XNA 在后台使用的。它在Microsoft.Xna.Framework.Content.Pipeline 程序集中。
非常大的缺点是内容管道程序集仅适用于 XNA Game Studio,而不是 XNA Framework 可再发行组件.因此,任何引用该程序集的代码都只能在安装了 Game Studio 的开发人员机器上运行。
根据您要执行的操作,这可能是不可接受的 - 您必须使用 XML 序列化的替代方法。或者,如果您正在执行关卡编辑器之类的操作,您可以直接使用内容管道来构建 XNB 文件 - 然后可以分发和动态加载这些文件。 WinForms 2 示例说明了方法。
【讨论】:
我觉得你可以试试 XElement
http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement.aspx
【讨论】: