Как использовать один и тот же файл в одном процессе с StreamWriter-ом
Посмотрел несколько сайтов, понятного мне решения(или работающего) я не нашел. С помощью StreamWriter программа записывает поступающий текст в txt (проще говоря парсер). При вводе определенной команде в Discord, switch-блок выводит строку с некоторыми данными из txt файла. Главная проблема в том, что вылезает сообщение о том, что файл используется уже другим (System.IO) процессом. Ниже представлен отрывок кода. Файл используется один и тот же (wins.txt). Хотелось бы узнать как можно сделать так, что бы можно было избежать ексепшенов по такой причине, т.е как можно сделать так что бы можно было одновременно записывать в файл, и потом из него читать строки, не закрывая файл. Если не сложно, хотелось бы увидеть полный код, буду очень благодарен)
if (msg.Content.StartsWith("[RL]") & nickname == _nickname)
{
string winmsg = msg.Content;
sw.WriteLine(winmsg);
sw.Flush(); // Dispose не подходит
switch (msg.Content)
{
case "!победы":
{
var wincopy = @"E:\c#\HoF_Friend\Wins\wins.txt"; //
StreamWriter stw = new StreamWriter(wincopy); // не важные строки кода
stw.WriteLine(msg.Content); //
stw.Close(); // если ставить тут Dispose, то SW закрывается "навсегда"
Console.WriteLine("Данные запрошены...");
var florence = File.ReadAllLines(wincopy).Count(x => x.Contains("Florence"));
var tuva = File.ReadAllLines(wincopy).Count(x => x.Contains("Тану-Тува"));
var loys = File.ReadAllLines(wincopy).Count(x => x.Contains("Loys"));
System.IO.IOException: "The process cannot access the file 'E:\c#\HoF_Friend\Wins\wins.txt' because it is being used by another