Я пытаюсь записать файл, я считаю, что закрываю файл, который я прочитал ранее в коде, но я получаю «System.IO.IO .Exception «Это мой код для чтения и записи в файл.System.IO.IOException используется другим процессом
public class InOutTxt
{
public List<Employee> ReadFile(string fileName) {
FileStream fs = new FileStream(fileName,FileMode.Open ,FileAccess.ReadWrite);
StreamReader fileIn = new StreamReader(fileName);
fileIn = File.OpenText(fileName);
List<Employee> list = new List<Employee>();
string[] test;
string name;
string ID;
string dep;
string post;
while (!fileIn.EndOfStream || !File.Exists(fileName)) {
string inString = fileIn.ReadLine();
test = inString.Split('#');
name = test[0];
ID = test[1];
dep = test[2];
post = test[3];
Employee newEmp = new Employee(name, ID, dep, post);
list.Add(newEmp);
}
fileIn.Close();
fs.Close();
return list;
}
public void WriteFile(List<Employee> outList, string file) {
FileStream fs = new FileStream(file, FileMode.Open, FileAccess.ReadWrite);
StreamWriter writeOut = new StreamWriter(file);
for (int i = 0; i < outList.Count; i++) {
writeOut.WriteLine(outList[i].name + '#' + outList[i].IDnum + '#' + outList[i].department + '#' + outList[i].position);
}
writeOut.Close();
fs.Close();
}
}
Ошибка является встречающийся в этой части кода
StreamReader fileIn = new StreamReader(fileName);
Если это помогает любому он работает хорошо сегодня утром, единственное крупное изменение, которое я сделал было добавление FileStream атрибута выше ,
Открываешь 3 файлов, но вы закрываете только 2. ошибка находится в 2-ой строке кода, который ничего не делает. Вы перестаете делать ошибки, используя эту команду * using *. –