私はpowershellを使ってファイルを作成していますが、このファイルをUTF8エンコードにする必要があります。Powershellで作成したファイルをUCS-2ではなくUTF8にエンコードするLE
メモ帳でファイルを検査すると、エンコードとしてUCS-2 LE BOMが表示されます。 PowerShellが代わりにUTF8を使用することは可能ですか?私はこのエラーが発生するなどの問題を引き起こしている
これまでのところ、私はUTF8を-encodingしようとしました。現在、私は(PowerShellのに非常に新しい私を許し、)根本的な問題がある可能性があり[IO.File]::WriteAllLines($filename, $text)
を使用していますコンソールは、しかし、ファイルが作成されている:
Cannot process argument because the value of argument "path" is null. Change the value of argument "path" to a non-null value.
+ CategoryInfo : InvalidArgument: (:) [Out-File], PSArgumentNullException
+ FullyQualifiedErrorId : ArgumentNull,Microsoft.PowerShell.Commands.OutFileCommand
+ PSComputerName : 50.19.209.240
ChangeFileModeByMask error (3): The system cannot find the path specified.
+ CategoryInfo : NotSpecified: (ChangeFileModeB...path specified.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
+ PSComputerName : 50.19.209.240
編集:詳細情報を提供するために、与えられた解答後に編集
を。ファイルから
詳細:
write-host "Creating Application.conf in UTF-8"
$filename = "c:\application.conf"
[IO.File]::WriteAllLines($filename, $text, [System.Text.Encoding]::UTF8)
コンソールの出力は、やはり上記のとおりerroringされます。
こんにちはAndrey、私は両方の提案を試みました。後者は私の最初の試みであり、前者は私が今試みたことです。私はまだコンソールでエラーを受け取り、それはまだ望ましくないエンコーディングでそれを作成します。編集した投稿を見て、明らかな間違いがないか確認してください。 – null
もちろん、セグメント '$ text = "asdaasdad" $ filename = "c:\ GAAAAAH.conf" [IO.File] :: WriteAllLines($ filename、$ text、[System.Text.Encoding]: :UTF8)\t 'それ自体は問題なく動作します。 – null
これは、ファイル内から呼び出される関数の中にあります。 – null