ConvertTo-Xml

创建对象的基于 XML 的表示形式。

语法

ConvertTo-Xml
              [-Depth <Int32>]
              [-InputObject] <PSObject>
              [-NoTypeInformation]
              [-As <String>]
              [<CommonParameters>]

说明

ConvertTo-Xml cmdlet 创建一个或多个 .NET 对象的 基于 XML 的 表示形式。 若要使用此 cmdlet,请通过管道将一个或多个对象传递给 cmdlet,或使用 InputObject 参数指定对象。

当通过管道将多个对象传递给 ConvertTo-Xml 或使用 InputObject 参数提交多个对象时,ConvertTo-Xml 返回包含所有对象的表示形式的单个内存中 XML 文档。

此 cmdlet 类似于 Export-Clixml,不同之处在于,Export-Clixml 将生成的 XML 存储在 公共语言基础结构 (CLI) 文件中,该文件可将该文件重新导入为 Import-Clixml的对象。 ConvertTo-Xml 返回 XML 文档的内存中表示形式,以便你可以继续在 PowerShell 中处理它。 ConvertTo-Xml 没有将对象转换为 CLI XML 的选项。

示例

示例 1:将日期转换为 XML

Get-Date | ConvertTo-Xml

此命令将当前日期(DateTime 对象)转换为 XML。

示例 2:将进程转换为 XML

ConvertTo-Xml -As "Document" -InputObject (Get-Process) -Depth 3

此命令将表示计算机上的所有进程的进程对象转换为 XML 文档。 对象扩展到三个级别的深度。

参数

-As

确定输出格式。 此参数的可接受值为:

  • String - 返回单个字符串。
  • Stream - 返回字符串数组。
  • Document - 返回 XmlDocument 对象。

默认值为 Document

类型:String
接受的值:Stream, String, Document
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Depth

指定 XML 表示形式中包含多少个包含对象的级别。 默认值为 1。

例如,如果对象的属性还包含对象,若要保存包含对象的属性的 XML 表示形式,则必须指定深度为 2。

可以为 Types.ps1xml 文件中的对象类型重写默认值。 有关详细信息,请参阅 about_Types.ps1xml

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

指定要转换的对象。 输入包含对象的变量,或键入获取对象的命令或表达式。 还可以通过管道将对象传递给 ConvertTo-XML

类型:PSObject
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-NoTypeInformation

省略对象节点中的 Type 属性。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

PSObject

可以通过管道将任何对象传递给此 cmdlet

输出

String

使用 As 参数并将值设置为 string时,此 cmdlet 将 XML 作为字符串返回。 当值 stream时,此 cmdlet 将返回字符串数组。

XmlDocument

默认情况下,此 cmdlet 返回 XML 文档。