System.Xml
PowerShell primarily uses the System.Xml.XmlDocument
object to work with XML content.
ConvertTo-Xml
The ConvertTo-XML
command creates an XML representation of an object as an XmlDocument
. For example, the current PowerShell process object might be converted to XML:
Get-Process -Id $pid | ConvertTo-Xml
Note
XML is text
:The command used in the previous code creates an XML representation of the object. All numeric values are stored as strings. The following example shows that the
WorkingSet
property, normally an integer, is held as a string:$xml = Get-Process -Id $pid | ConvertTo-Xml
$property = $xml.Objects.Object.Property |
Where-Object Name -eq WorkingSet
$property.'#text'.GetType()
XML type accelerator
The XML type accelerator ([Xml]
) can be used to create instances of XmlDocument
, as shown in the following code:
[Xml]$xml = @" <?xml version="1.0"?> <cars> <car type="Saloon"> <colour>Green</colour> <doors>4</doors> <transmission>Automatic...