Я пытаюсь написать файл журнала, и это огромный объем данных.Я использую AppendTextAsync каждый раз, когда хочу добавить данные для создания нужной структуры, и это очень медленно.Есть ли способ улучшить это?
await FileIO.AppendTextAsync(file, "All event log messages \r\n");
Как кто-то еще упомянул AppendTextAsync, открывайте и пишите и закрывайте файл каждый раз, поэтому я изменил его на:
AppendTextAsync
var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite); using (var outputStream = stream.GetOutputStreamAt(0)) { using (var dataWriter = new Windows.Storage.Streams.DataWriter(outputStream)) { dataWriter.WriteString("All event log messages \r\n"); await dataWriter.StoreAsync(); await outputStream.FlushAsync(); } } stream.Dispose();
AppendTextAsync откроет файл, выполнит поиск до конца, запишет в файл, закроет файл.Это требует много работы для ОС, особенно для написания одной строки текста.
Откройте файл один раз, добавьте весь необходимый текст, затем закройте его.