Ger*_*ard 1 c# constructor streamwriter
在C#3.0中,框架与3.0(程序集mscorlib.dll,v2.0.50727)
System.IO.StreamWriter具有以下构造函数:
public StreamWriter(Stream stream, Encoding encoding);
public StreamWriter(string path, bool append, Encoding encoding);
Run Code Online (Sandbox Code Playgroud)
所以代码
Encoding enc = System.Text.Encoding.GetEncoding("iso-8859-1");
writer = new StreamWriter(filename, enc);
writer = new StreamWriter(filename, false, enc);
Run Code Online (Sandbox Code Playgroud)
给出了编译错误"最好的重载方法匹配...有一些无效的参数"......"无法在第二行从'System.Text.Encoding'转换为'bool'".
对不起,不是问题,而是错误.
因为filename是一个string(显然)并且无法转换为Stream.编译器假定第二个重载是您尝试使用的重载.它可能假设"无法将字符串转换为流",但编译器不会按该顺序解析参数.