private string[] ReadAllLines( string filepath )
{
using ( var stream = File.Open( filepath, FileMode.OpenOrCreate, FileAccess.ReadWrite ) )
{
var reader = new StreamReader( stream );
var list = new Queue<string>();
while ( true )
{
var text = reader.ReadLine();
if ( text == null )
break;
list.Enqueue( text );
}
if ( list.Count < 150 )
return list.ToArray();
while ( list.Count > 100 )
{
list.Dequeue();
}
var result = list.ToArray();
stream.SetLength( 0 );//清空文件重新写入
var writer = new StreamWriter( stream );
foreach ( var text in result )
writer.WriteLine( text );
return result;
}
}