log.txt
withを作成してFile.Create(Path.Combine(PATH, NAME));
から読み取ろうとすると、例外が発生します: {System.IO.IOException: The process cannot access the file 'c:\temp\log.txt' because it is being used by another process.
。
ファイルが存在し、メソッドで作成されていない場合、log.txt
問題なくログを読み書きできます。
作成されたのはlog.txt
非同期で、問題はプログラムが作成される前にそれを読み取ろうとしていることですか?
public static void WriteToLog(string text)
{
try
{
if (!Directory.Exists(PATH))
{
Directory.CreateDirectory(PATH);
}
if( !File.Exists(Path.Combine(PATH, NAME)) )
{
File.Create(Path.Combine(PATH, NAME));
}
var logLines = File.ReadAllLines(Path.Combine(PATH, NAME)).ToList<string>();
logLines.Insert(0, "-------------------------------------------------End New Log");
logLines.Insert(0, text);
logLines.Insert(0, "-------------------------------------------------Start New Log");
File.WriteAllLines(Path.Combine(PATH, NAME), logLines);
}
catch (Exception ex)
{
}
}