我的应用程序有一个日志文件,该日志文件最多可以创建 10 个日志文件。代码片段如下,
Stream logFileStream = null;
string file = Config.LOG_FILE;
m_strLogfile = Config.LOG_FILE + Config.LOG_FILE_EXT;
while (File.Exists(m_strGeneralFilePath + file + Config.LOG_FILE_EXT))
{
logFileStream = File.OpenRead(m_strGeneralFilePath + file + Config.LOG_FILE_EXT);
// if(!logFileStream.Length.Equals(logSize))
if ( logFileStream.Length > Convert.ToInt32(logSize)) // approx. 1MB 1.000.000
{
for (int i = 9; i > 0; i--)
{
if (i == 9)
{
if (File.Exists(Config.LOG_FILE + i + Config.LOG_FILE_EXT))
{
File.Delete(Config.LOG_FILE + i + Config.LOG_FILE_EXT);
}
}
if (File.Exists(m_strGeneralFilePath + Config.LOG_FILE + i + Config.LOG_FILE_EXT))
{
System.IO.File.Move(m_strGeneralFilePath + Config.LOG_FILE + i + Config.LOG_FILE_EXT, m_strGeneralFilePath + Config.LOG_FILE + (i + 1) + Config.LOG_FILE_EXT);
}
}
System.IO.File.Move(m_strGeneralFilePath + Config.LOG_FILE + Config.LOG_FILE_EXT, m_strGeneralFilePath + Config.LOG_FILE + "1" + Config.LOG_FILE_EXT);
File.Create(m_strGeneralFilePath + Config.LOG_FILE + Config.LOG_FILE_EXT);
}
}
if (logFileStream != null)
{
logFileStream.Close();
logFileStream.Dispose();
}
一旦System.IO.File.Move(m_strGeneralFilePath + Config.LOG_FILE + Config.LOG_FILE_EXT, m_strGeneralFilePath + Config.LOG_FILE + "1" + Config.LOG_FILE_EXT);
遇到异常说“它被其他进程使用”,我该如何摆脱它?请帮助我。提前致谢。
我正在使用 .net 4.0 c# winforms。