Exemple #1
0
        public PaFile( ZipInputStream unzip, ZipEntry entry )
        {
            string s = entry.Name;
            int i = s.LastIndexOf( "/" );
            if( i < 0 )
            {
                _Name = s.Substring( 0, s.Length );
                _Path = "";
            }
            else
            {
                _Name = s.Substring( i + 1, s.Length - ( i + 1 ) );
                _Path = s.Substring( 0, i );
            }

            _Buffer = new byte[Convert.ToInt32( entry.Size ) - 1 + 1];
            int size = 0;
            while( size < _Buffer.Length )
            {
                size += unzip.Read( _Buffer, size, _Buffer.Length - size );
            }
            if( size != _Buffer.Length )
            {
                throw ( new Exception( EXCEPTION_FileRead + _Buffer.Length + "/" + size ) );
            }
            string ext = Extension;

            _Encoding = PaTextEncoding.Unknown;

            switch( ext.ToLower() )
            {
                case "dnn":

                    _Type = PaFileType.Dnn;
                    break;
                case "dll":

                    _Type = PaFileType.Dll;
                    break;
                case "ascx":

                    _Type = PaFileType.Ascx;
                    break;
                case "sql":

                    _Type = PaFileType.Sql;
                    _Encoding = GetTextEncodingType( _Buffer );
                    break;
                default:

                    if( ext.ToLower().EndsWith( "dataprovider" ) )
                    {
                        _Type = PaFileType.DataProvider;
                        _Encoding = GetTextEncodingType( _Buffer );
                    }
                    else
                    {
                        _Type = PaFileType.Other;
                    }
                    break;
            }
        } 
Exemple #2
0
        public PaFile(ZipInputStream unzip, ZipEntry entry)
        {
            string s = entry.Name;
            int    i = s.LastIndexOf("/");

            if (i < 0)
            {
                _Name = s.Substring(0, s.Length);
                _Path = "";
            }
            else
            {
                _Name = s.Substring(i + 1, s.Length - (i + 1));
                _Path = s.Substring(0, i);
            }

            _Buffer = new byte[Convert.ToInt32(entry.Size) - 1 + 1];
            int size = 0;

            while (size < _Buffer.Length)
            {
                size += unzip.Read(_Buffer, size, _Buffer.Length - size);
            }
            if (size != _Buffer.Length)
            {
                throw (new Exception(EXCEPTION_FileRead + _Buffer.Length + "/" + size));
            }
            string ext = Extension;

            _Encoding = PaTextEncoding.Unknown;

            switch (ext.ToLower())
            {
            case "dnn":

                _Type = PaFileType.Dnn;
                break;

            case "dll":

                _Type = PaFileType.Dll;
                break;

            case "ascx":

                _Type = PaFileType.Ascx;
                break;

            case "sql":

                _Type     = PaFileType.Sql;
                _Encoding = GetTextEncodingType(_Buffer);
                break;

            default:

                if (ext.ToLower().EndsWith("dataprovider"))
                {
                    _Type     = PaFileType.DataProvider;
                    _Encoding = GetTextEncodingType(_Buffer);
                }
                else
                {
                    _Type = PaFileType.Other;
                }
                break;
            }
        }