两者之间有什么区别(CPU 使用率、MSIL 等):
StreamWriter sw = new StreamWriter("C:\test.txt");
和:
StreamWriter sw = File.CreateText("C:\test.txt");
?
两者之间有什么区别(CPU 使用率、MSIL 等):
StreamWriter sw = new StreamWriter("C:\test.txt");
和:
StreamWriter sw = File.CreateText("C:\test.txt");
?
不多...(通过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 编译几乎肯定会内联调用,因此即使是单个附加方法调用的微小开销也可能不会产生。