Cái nào hoạt động tốt hơn hoặc chính xác hơn? Có tốt hơn khi tạo một đối tượng từ lớp StreamWriter
và sử dụng nó thường xuyên trong một phương thức và cuối cùng loại bỏ nó? hoặc tốt hơn là sử dụng một đối tượng từ StringBuilder
sau đó tạo đối tượng từ StreamWriter
và ngay lập tức bỏ đối tượng đó?Streamwriter vs StringBuilder
1)
var Write = new StreamWriter(string.Format("{0}{1}{2}", Environment.CurrentDirectory, Path.DirectorySeparatorChar, "Dummy.txt"));
for (int i = 0; i < 100; i++)
{
//Do something include calculation
Write.WriteLine(something);
}
Write.Flush();
Write.Dispose();
2)
var Str = new StringBuilder();
for (int i = 0; i < 100; i++)
{
//Do something include calculation
Str.AppendLine(something);
}
var Write = new StreamWriter(string.Format("{0}{1}{2}", Environment.CurrentDirectory, Path.DirectorySeparatorChar, "Dummy.txt"));
Write.Write(Str);
Write.Flush();
Write.Dispose();
Don' t sử dụng 'string.Format' trên đường dẫn, thay vì sử dụng' Path.Combine (Environment.CurrentDirectory, "Dummy.txt") '. – Alxandr
để ngay lập tức 'Xử lý' hãy thử nghiên cứu cách sử dụng cấu trúc' using() {} ' – MethodMan
sử dụng khối 'đang sử dụng' với luồngMã: http://stackoverflow.com/questions/212198/what-is-the-c- sharp-using-block-and-why-should-i-use-it – 5uperdan