如何在PowerShell上使用ANSI编码即时提供System.IO.StreamWriter?

时间:2012-04-20 18:10:19

标签: powershell streamwriter

我没有创建Power Shell脚本的经验,而且我正在尝试实例化提供特定文本编码的System.IO.StreamWriter类。我正在尝试这样做:

$file = New-Object System.IO.StreamWriter("sample.txt", [System.Text.Encoding]::Default, 4096)

我收到以下错误消息:

New-Object : Cannot find an overload for "StreamWriter" and the argument count: "3". 
At line:1 char:18 
    + $out = New-Object <<<<  System.IO.StreamWriter("sample.txt", [System.Text.Encoding]::Default, 4096)
    + CategoryInfo          : InvalidOperation: (:) [New-Object], MethodException
    + FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

我查看了MSDN文档StreamWriter Constructor (Stream, Encoding, Int32),它有一个带有三个参数的重载。

有谁知道如何实例化指定编码的System.IO.StreamWriter?

谢谢,

1 个答案:

答案 0 :(得分:5)

您正试图致电StreamWriter(String, Encoding, Int32) - 签名不存在。不可否认,错误消息有点不尽如人意......但基本上您需要自己创建流,或者使用StreamWriter(String, Boolean, Encoding)