Я пытаюсь преобразовать формат файла в UTF-8 с помощью PowerShell, используя technique outlined in another SO question.Метод Powershell - WriteAllLines - «Доступ запрещен»
Я использую следующее заявление:
[IO.File]::WriteAllLines((Get-Item -Path ".\" -Verbose).FullName,"Test.txt")
Первым параметром является путь к файлу (C: \ Пользователи \ rsax \ документы \ Test), а второй параметр является именем файла.
Однако команда не работает, и возвращает следующее сообщение об ошибке:
Exception calling "WriteAllLines" with "2" argument(s): "Access to the path 'C:\users\rsax\documents\Test' is denied."
At line:1 char:25
+ [IO.File]::WriteAllLines <<<< ((Get-Item -Path ".\" -Verbose).FullName,"Test.txt")
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
- Я бегу команду из PowerShell в качестве администратора.
- Я проверил, что файл находится в папке.
я могу запускать другие командлеты в каталоге, доступ к файлу, такие как:
Get-Content Test.txt | Out-File TestOut.txt
Я не смог найти ответ на MSDN MethodInvocationException page.
Что я делаю неправильно?
Первый аргумент должен быть полный путь, а не только каталог. Второй аргумент - это исходное содержимое. – TheMadTechnician