HelloWorld.TextFileMessageService.ReadAllLines C# (CSharp) Method

ReadAllLines() private method

private ReadAllLines ( string filepath ) : string[]
filepath string
return string[]
        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;

              }
        }