PowerShell convierte matriz de bytes en cadena
Utilice el método GetString() del formato de codificación UTF8 en PowerShell para convertir una matriz de bytes en una cadena. Este método devuelve una cadena.
La clase [System.Text.Encoding] proporciona métodos para convertir cadenas hacia y desde diferentes formatos de codificación.
En este artículo, analizaremos cómo utilizar el método GetString() en PowerShell para convertir una matriz de bytes en una cadena.
Convierta una matriz de bytes en cadena en PowerShell usando el método GetString()
Utilice el método GetString() de la clase [System.Text.Encoding] en PowerShell para convertir una matriz de bytes en una cadena.
Entendamos con la ayuda de un ejemplo cómo obtener una matriz de bytes y usarla para convertirla en una cadena.
# Declare string variable
$str = "ShellGeek"
# converting string to bytes array
$bytesArr = [System.Text.Encoding]::UTF8.GetBytes($str)
# Print the bytes array
$bytesArr
# Convert byte to string
$str2 = [System.Text.Encoding]::UTF8.GetString($bytesArr)
# Print the string
$str2
En el script de PowerShell anterior, la variable $str es un tipo de cadena que contiene el valor “ShellGeek”. Usando el método GetBytes(), convierte la cadena en una matriz de bytes y asigna el resultado a la variable $bytesArr que contiene la matriz de bytes.
Para convertir una matriz de bytes en una cadena, utiliza el método GetString() que toma una matriz de bytes como parámetro de entrada y devuelve una cadena.
La salida del script anterior en PowerShell convierte la matriz de bytes en una cadena usando el método GetString() y la clase [System.Text.Encoding] es:
Consejo interesante: ¡Cómo convertir una cadena a un número entero en PowerShell!
Convertir matriz de bytes en cadena en PowerShell
Utilice la clase [System.Text.Encoding] que proporciona el método GetString() para decodificar datos binarios en una cadena utilizando una codificación específica. Proporciona un conjunto de métodos para codificar y decodificar texto en varios formatos.
# Create a byte array
$bytesArr = [byte[]]@(0x48, 0x65, 0x6C, 0x6C, 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64)
# Convert byte array to string
$str3 = [System.Text.Encoding]::UTF8.GetString($bytesArr)
# Print the string
$str3En el script de PowerShell anterior, la variable $bytesArr contiene la matriz de bytes. La clase System.Text.Encoding tiene el método GetString() en PowerShell para convertir una matriz de bytes en una cadena. Este método toma un parámetro de entrada como una matriz de bytes y devuelve una cadena.
La salida del script decodifica datos binarios en una cadena utilizando el formato de codificación UTF8 de la siguiente manera:
# Create a byte array
PS C:\> $bytesArr = [byte[]]@(0x48, 0x65, 0x6C, 0x6C, 0x6F, 0x20, 0x57, 0x6F, 0x72, 0x6C, 0x64)
# Convert byte array to string
PS C:\> $str3 = [System.Text.Encoding]::UTF8.GetString($bytesArr)
# Print the string
PS C:\> $str3
PS C:\> Hello World
Consejo interesante: ¡Cómo convertir una matriz de bytes en una cadena hexadecimal en PowerShell!
Conclusión
Espero que el artículo anterior sobre cómo convertir una matriz de bytes en una cadena en PowerShell usando el método GetString() del formato de codificación UTF8 le resulte útil.
Las cadenas de PowerShell son secuencias de caracteres, mientras que los bytes son secuencias de datos binarios. La clase System.Text.Encoding proporciona métodos para convertir cadenas en bytes y convertir bytes en cadenas utilizando el método ToString() del formato de codificación UTF8.
Puede encontrar más temas sobre los comandos de PowerShell Active Directory y los conceptos básicos de PowerShell en la página de inicio de ShellGeek.
