public override float ReadSingle() { if (_bigEndian) { byte[] buf = this.ReadBytes(4); Array.Reverse(buf); return BitConverter.ToSingle(buf, 0); } else return base.ReadSingle(); }