Байты надстройки не работают с PowerShell Core
Я использую PowerShell Core v6.0.2 и пытаюсь записать массив байтов в файл. Это нормально работает в обычном PowerShell, но не работает с PowerShell Core
$jsonstr = Get-Content $inputfilename
$jsonfile = ConvertFrom-Json $jsonstr
$bytes = [Convert]::FromBase64String($jsonfile.data)
$outputfilename = "test.xlsx";
Add-Content -Path $outputfilename -Value $bytes -Encoding Byte
Ошибка:
Это ошибка или байт больше не может использоваться из-за проблем с двоичным порядком?
1 ответ
Решение
Согласно этому сообщению в блоге, в PowerShell Core необходимо использовать Set-Content с параметром AsByteStream.
Я изменил свой скрипт на следующее:
$jsonstr = Get-Content $inputfilename
$jsonfile = ConvertFrom-Json $jsonstr
$bytes = [Convert]::FromBase64String($jsonfile.data)
$outputfilename = "test.xlsx";
Set-Content -Path $outputfilename -Value $bytes -AsByteStream