readerPOSPath.BaseStream.Seek(n, SeekOrigin.Begin);
linepos = readerPOSPath.ReadLine();//读一行
按照上面的方法。Seek到指定位置后,紧接着ReadLine(),得到的结果有Seek之前的数据,也就是说Seek()没有即时产生作用,有一些延迟,具体原因没时间深究了。参考:这个博客解决问题
readerPOSPath.BaseStream.Seek(n, SeekOrigin.Begin);
readerPOSPath.DiscardBufferedData();
linepos = readerPOSPath.ReadLine();//读一行