private void _Init(Stream stream, bool leaveOpen, string name)
        {
            _inputStream = stream;
            if (!_inputStream.CanRead)
            {
                throw new ZipException("The stream must be readable.");
            }
            _container = new ZipContainer(this);
#if SILVERLIGHT
            _provisionalAlternateEncoding = new IBM437Encoding();
#else
            _provisionalAlternateEncoding = System.Text.Encoding.GetEncoding("IBM437");
#endif

            _leaveUnderlyingStreamOpen = leaveOpen;
            _findRequired = true;
            _name         = name ?? "(stream)";
        }
        private void _Init(Stream stream, bool leaveOpen, string name)
        {
            _inputStream = stream;
            if (!_inputStream.CanRead)
                throw new ZipException("The stream must be readable.");
            _container= new ZipContainer(this);
#if SILVERLIGHT
          _provisionalAlternateEncoding = new IBM437Encoding();
#else
            _provisionalAlternateEncoding = System.Text.Encoding.GetEncoding("IBM437");
#endif

            _leaveUnderlyingStreamOpen = leaveOpen;
            _findRequired= true;
            _name = name ?? "(stream)";
        }