Exemple #1
0
 public Class814(Class771 A_0, string A_1, Stream A_2, bool A_3, FileAttributes A_4) : this(A_0)
 {
     this.string_0 = A_1;
     this.bool_0   = A_3;
     this.stream_0 = A_2;
     this.int_2    = (int)A_4;
     if (this.method_37(this.string_0))
     {
         this.generalPurposeBitFlags_0 = (GeneralPurposeBitFlags)((short)(this.generalPurposeBitFlags_0 | GeneralPurposeBitFlags.Unicode));
     }
 }
Exemple #2
0
    internal void method_23(Stream A_0)
    {
        A_0.Position += 4L;
        this.generalPurposeBitFlags_0 = (GeneralPurposeBitFlags)Class771.smethod_2(A_0);
        this.compressionMethod_0      = (CompressionMethod)Class771.smethod_2(A_0);
        this.bool_1   = true;
        A_0.Position += 4L;
        this.uint_0   = (uint)Class771.smethod_1(A_0);
        this.long_0   = Class771.smethod_1(A_0);
        this.long_1   = Class771.smethod_1(A_0);
        int count = Class771.smethod_2(A_0);
        int num2  = Class771.smethod_2(A_0);
        int num3  = Class771.smethod_2(A_0);

        A_0.Position += 4L;
        this.int_2    = Class771.smethod_1(A_0);
        this.int_1    = Class771.smethod_1(A_0);
        byte[] buffer = new byte[count];
        A_0.Read(buffer, 0, count);
        this.string_0 = ((((short)(this.generalPurposeBitFlags_0 & GeneralPurposeBitFlags.Unicode)) != 0) ? Encoding.UTF8 : Encoding.Default).GetString(buffer, 0, buffer.Length);
        A_0.Position += num2 + num3;
    }
Exemple #3
0
        internal void ReadCentralDirectoryData(Stream stream)
        {
            stream.Position += 4;

            m_options = (GeneralPurposeBitFlags)ZipArchive.ReadInt16(stream);
            m_compressionMethod = (CompressionMethod)ZipArchive.ReadInt16(stream);
            m_bCompressed = true;

            stream.Position += 4;

            m_uiCrc32 = (uint)ZipArchive.ReadInt32(stream);
            m_lCompressedSize = ZipArchive.ReadInt32(stream);
            m_lOriginalSize = ZipArchive.ReadInt32(stream);

            int iFileNameLength = ZipArchive.ReadInt16(stream);
            int iExtraFieldLenth = ZipArchive.ReadInt16(stream);
            int iCommentLength = ZipArchive.ReadInt16(stream);

            stream.Position += 4;

            m_iExternalAttributes = ZipArchive.ReadInt32(stream);
            m_iLocalHeaderOffset = ZipArchive.ReadInt32(stream);

            byte[] arrBuffer = new byte[iFileNameLength];

            stream.Read(arrBuffer, 0, iFileNameLength);

            Encoding encoding = ((m_options & GeneralPurposeBitFlags.Unicode) != 0) ?
              Encoding.UTF8 :
              Encoding.Default;

            m_strItemName = encoding.GetString(arrBuffer, 0, arrBuffer.Length);

            stream.Position += iExtraFieldLenth + iCommentLength;
        }