Test1一次写10M,Test2 100次写100K,Test3 10000次写1K。
Test1用时,单位毫米:93 111 95 102 105
Test2用时,单位毫米:226 210 198 289 224
Test3用时,单位毫米:3000 3000 4000 3000 3000
Test1平均用时101.2毫秒,Test2平均用时229.4毫秒,Test3平均用时3200毫秒。
结论:
10000次写1K 比 一次写10M 耗时多30倍。
测试环境:Win10 VS2013C#
源码:
void Test(int iNumForFor ,int iNumForStr)
{
string strPathFileName = CBase.GetAppDataPath() + "1.txt";
System.IO.File.Delete(strPathFileName);
for (int i = 0; i < iNumForFor; i++)
{
string strContent = new string('a', 1000 * 1 * iNumForStr);
StreamWriter SW = new StreamWriter(strPathFileName, true, Encoding.Default);
SW.WriteLine(strContent);
SW.Close();
}
}
[TestMethod]
public void Test1()
{
Test(1, 1000*10);
}
[TestMethod]
public void Test2()
{
Test(100, 100);
}
[TestMethod]
public void Test3()
{
Test(1000*10, 1);
}