Пример #1
0
    def serialize(self,
                  document,
                  indent=False,
                  encoding=bridge.ENCODING,
                  prefixes=None,
                  omit_declaration=False):
        doc = XmlDocument()
        doc.LoadXml(self.__start_document(document))
        if document.xml_text:
            doc.DocumentElement.AppendChild(
                doc.CreateTextNode(document.xml_text))
        self.__serialize_element(doc, doc.DocumentElement, document)

        settings = XmlWriterSettings()
        settings.Indent = indent
        settings.Encoding = Encoding.GetEncoding(encoding)
        settings.OmitXmlDeclaration = omit_declaration

        ms = MemoryStream()
        xw = XmlWriter.Create(ms, settings)
        doc.Save(xw)
        sr = StreamReader(ms)
        ms.Seek(0, SeekOrigin.Begin)
        content = sr.ReadToEnd()
        ms.Close()

        return content
Пример #2
0
def _read_to_end(stream, bufsize=4096):
    buffer = _make_buffer(bufsize)
    memory = MemoryStream()
    while True:
        count = stream.Read(buffer, 0, bufsize)
        if not count:
            break
        memory.Write(buffer, 0, count)
    bytes = memory.ToArray()
    memory.Close()
    return bytes
Пример #3
0
def compress(string, level=6):
    bytes = raw.GetBytes(string)
    stream = MemoryStream()
    zstream = DeflateStream(stream, CompressionMode.Compress, True)
    zstream.Write(bytes, 0, len(bytes))
    zstream.Close()
    compressed = raw.GetString(stream.ToArray())
    stream.Close()

    header = _zlib_header()
    footer = _zlib_footer(string)
    return header + compressed + footer
Пример #4
0
                except Exception, e:
                    continue

                finally:
                    if fs is not None:
                        fs.Close()

        ms = None
        fs = None

        try:
            ms = MemoryStream()
            characters = Array.CreateInstance(Character, 1)
            characters[0] = characterList[Random(Environment.TickCount).Next(
                characterList.Count)]
            serializer = XmlSerializer(characters.GetType())
            serializer.Serialize(ms, characters)
            ms.Seek(0, SeekOrigin.Begin)
            fs = FileStream(path, FileMode.Create, FileAccess.Write,
                            FileShare.Read)
            buffer = ms.ToArray()
            fs.Write(buffer, 0, buffer.Length)
            fs.Flush()

        finally:
            if fs is not None:
                fs.Close()

            if ms is not None:
                ms.Close()
Пример #5
0
def BitmapToBytes(bitmap):
    ms = MemoryStream()
    bitmap.Save(ms, ImageFormat.Jpeg)
    ms.Close()
    return ms.ToArray()
Пример #6
0
        def onLoad():
            streamList1 = List[MemoryStream]()
            streamList2 = List[MemoryStream]()

            for i in range(10):
                ms = None
                fs = None

                try:
                    fs = FileStream(
                        String.Format("Assets\\Number-{0}.png",
                                      i.ToString(
                                          CultureInfo.InvariantCulture)),
                        FileMode.Open, FileAccess.Read, FileShare.Read)
                    ms = MemoryStream()
                    buffer = Array.CreateInstance(Byte, fs.Length)
                    bytesRead = fs.Read(buffer, 0, buffer.Length)

                    while bytesRead > 0:
                        ms.Write(buffer, 0, bytesRead)
                        bytesRead = fs.Read(buffer, 0, buffer.Length)

                    ms.Seek(0, SeekOrigin.Begin)

                    streamList1.Add(ms)

                except:
                    if ms is not None:
                        ms.Close()
                        ms = None

                finally:
                    if fs is not None:
                        fs.Close()

            for path in [
                    "Assets\\Hour.png", "Assets\\Minute.png",
                    "Assets\\Second.png"
            ]:
                ms = None
                fs = None

                try:
                    fs = FileStream(path, FileMode.Open, FileAccess.Read,
                                    FileShare.Read)
                    ms = MemoryStream()
                    buffer = Array.CreateInstance(Byte, fs.Length)
                    bytesRead = fs.Read(buffer, 0, buffer.Length)

                    while bytesRead > 0:
                        ms.Write(buffer, 0, bytesRead)
                        bytesRead = fs.Read(buffer, 0, buffer.Length)

                    ms.Seek(0, SeekOrigin.Begin)

                    streamList2.Add(ms)

                except:
                    if ms is not None:
                        ms.Close()
                        ms = None

                finally:
                    if fs is not None:
                        fs.Close()

            return KeyValuePair[List[MemoryStream],
                                List[MemoryStream]](streamList1, streamList2)