이것은 내 질문 here에 대한 속편 로그 파일의 지방을 트리밍에 대한 것입니다.스트림이 읽을 수없는 이유는 무엇입니까?
System.ArgumentException was unhandled
_HResult=-2147024809
_message=Stream was not readable.
왜 읽을가 아니다 : 마지막 줄에 실패
private readonly FileStream _fileStream;
private readonly StreamWriter _streamWriter;
. . .
const int MAX_LINES_DESIRED = 1000;
string uriPath = GetExecutionFolder() + "\\Application.log";
string localPath = new Uri(uriPath).LocalPath;
if (!File.Exists(localPath))
{
File.Create(localPath);
}
_fileStream = File.OpenWrite(localPath);
// First, remove the earliest lines from the file if it's grown too much
StreamReader reader = new StreamReader(_fileStream);
. . .
가 함께 표시 :
는이 코드가? 파일이 비어 있기 때문에 어쩌면 생각했지만, 줄을 추가하고 여전히 같은 오류 메시지를받습니다.
두 가지 : 1)'OpenWrite'로 다시 열려고하면'File.Create'는 예외를 일으킬 수있는 열린 핸들을 반환합니다. 2)'OpenWrite'는 읽을 수있는 스트림을 반환하지 않습니다. 이름은 암시하기위한 것이므로 서면으로 만 열립니다. –