之间有什么区别(CPU使用率,MSIL等):
StreamWriter sw = new StreamWriter("C:\test.txt");
和
StreamWriter sw = File.CreateText("C:\test.txt");
答案 0 :(得分:6)
不多......(通过Reflector)
[SecuritySafeCritical]
public static StreamWriter CreateText(string path)
{
if (path == null)
{
throw new ArgumentNullException("path");
}
return new StreamWriter(path, false); // append=false is the default anyway
}
虽然我更喜欢使用File。*工厂方法,因为我认为它们看起来更干净,并且比将一堆构造函数参数传递给Stream或StreamWriter更具可读性,因为很难记住哪些重载会做什么如果你是不看定义。
此外,JIT编译几乎肯定会内联调用,因此即使是单个附加方法调用的微不足道的开销也可能不会发生。