ConvertTo-Xml
Creates an XML-based representation of an object.
Syntax
Default (Default)
ConvertTo-Xml
[-InputObject] <PSObject>
[-Depth <Int32>]
[-NoTypeInformation]
[-As <String>]
[<CommonParameters>]
Description
The ConvertTo-Xml
cmdlet creates an XML-based representation of one or more Microsoft .NET Framework objects.
To use this cmdlet, pipe one or more objects to the cmdlet, or use the InputObject parameter to specify the object.
When you pipe multiple objects to ConvertTo-Xml
or use the InputObject parameter to submit multiple objects, ConvertTo-Xml
returns a single XML document that includes representations of all of the objects.
This cmdlet is similar to Export-Clixml
except that Export-Clixml
stores the resulting XML in a file.
ConvertTo-Xml
returns the XML, so you can continue to process it in PowerShell.
Examples
Example 1: Convert a date to XML
PS C:\> Get-Date | ConvertTo-Xml
This command converts the current date (a DateTime object) to XML.
Example 2: Convert processes to XML
PS C:\> ConvertTo-Xml -As "Document" -InputObject (Get-Process) -Depth 3
This command converts the process objects that represent all of the processes on the computer into an XML document. The objects are expanded to a depth of three levels.
Parameters
-As
Determines the output format. The acceptable values for this parameter are:
- String. Returns a single string.
- Stream. Returns an array of strings.
- Document. Returns an XmlDocument object.
The default value is Document.
Parameter properties
Type: | String |
Default value: | None |
Accepted values: | Stream, String, Document |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Depth
Specifies how many levels of contained objects are included in the XML representation. The default value is 1.
For instance, if the object's properties also contain objects, to save an XML representation of the properties of the contained objects, you must specify a depth of 2.
The default value can be overridden for the object type in the Types.ps1xml files. For more information, see about_Types.ps1xml.
Parameter properties
Type: | Int32 |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-InputObject
Specifies the object to be converted. Enter a variable that contains the objects, or type a command or expression that gets the objects. You can also pipe objects to ConvertTo-XML.
Parameter properties
Type: | PSObject |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | 0 |
Mandatory: | True |
Value from pipeline: | True |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-NoTypeInformation
Omits the Type attribute from the object nodes.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
Inputs
PSObject
You can pipe any object to ConvertTo-XML.
Outputs
System.String or System.Xml.XmlDocument
The value of the As parameter determines the type of object that ConvertTo-XML returns.