Пример #1
0
        public static void EncodePackedFile(string xml, out byte[] bytes)
        {
            var PS = new Packed_Section();

            XmlDocument xDoc = new XmlDocument();

            xDoc.LoadXml(xml);

            var          f      = new MemoryStream();
            BinaryWriter writer = new BinaryWriter(f);

            //header
            writer.Write(Packed_Section.Packed_Header);
            writer.Write((sbyte)0);

            //dictionary
            var newDict = GetXmlDict(xDoc);

            PS.writeDictionary(writer, newDict);

            //records
            PS.WriteElement(writer, xDoc.FirstChild, xDoc, newDict);

            f.Flush();

            bytes = f.ToArray();

            f.Close();
        }
Пример #2
0
        public static void EncodePackedFile(string path, string xml)
        {
            var PS = new Packed_Section();

            XmlDocument xDoc = new XmlDocument();

            xDoc.LoadXml(xml);

            File.Delete(path);
            var          f      = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write);
            BinaryWriter writer = new BinaryWriter(f);

            //header
            writer.Write(Packed_Section.Packed_Header);
            writer.Write((sbyte)0);

            //dictionary
            var newDict = GetXmlDict(xDoc);

            PS.writeDictionary(writer, newDict);

            //records
            PS.WriteElement(writer, xDoc.FirstChild, xDoc, newDict);

            f.Flush();
            f.Close();
        }