Para el beneficio de los buscadores, si tiene una línea superior de XML que incluye información de formato (en lugar de directamente en el nodo raíz) que necesita para eliminar la línea superior antes de poder convertirlo
por ej.
<?xml version="1.0" encoding="utf-8"?>
<Courses>
<CourseEntry Type="Mandatory" Name="Math"/>
<CourseEntry Type="Mandatory" Name="Coding" />
<CourseEntry Type="Optional" Name="Economics" />
<CourseEntry Type="Optional" Name="History" />
</Courses>
Requiere:
$xmlFile = Get-Content "*.xml"
$xmlFileMinusFormatData = $xmlFile[1..($xmlFile.Length - 1)] #we need to remove the first line
$usableXml = [xml]$xmlFileMinusFormatData # Convert to xml for easy handling
$usableXml.Courses.CourseEntry.Count # just a count of rows
no aparece ningún error de esa línea. ¿Has escrito fuertemente la variable $ str o algo así? Trate de poner el tipo antes de la variable a (re) escribir fuertemente la variable: [xml] $ cadena = "" (o [XML] $ cadena = [xml] "") – Jaykul
Lo mismo digo. Me funciona como lo has escrito arriba. –
Era la versión vieja de powershell. – rickythefox