diff options
author | Alexandre Vassalotti <alexandre@peadrop.com> | 2008-06-11 22:58:36 (GMT) |
---|---|---|
committer | Alexandre Vassalotti <alexandre@peadrop.com> | 2008-06-11 22:58:36 (GMT) |
commit | 794652dd064590d7188d93d9bf524ae9e1558386 (patch) | |
tree | a0011f0cfa8fef8fcda771eceadad50e1f95b42d /Lib/xml/dom | |
parent | 502d89ed1518687861563293cb761d268321fa4a (diff) | |
download | cpython-794652dd064590d7188d93d9bf524ae9e1558386.zip cpython-794652dd064590d7188d93d9bf524ae9e1558386.tar.gz cpython-794652dd064590d7188d93d9bf524ae9e1558386.tar.bz2 |
Issue 2918: Merge StringIO and cStringIO.
Diffstat (limited to 'Lib/xml/dom')
-rw-r--r-- | Lib/xml/dom/minidom.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Lib/xml/dom/minidom.py b/Lib/xml/dom/minidom.py index f229369..3025ed7 100644 --- a/Lib/xml/dom/minidom.py +++ b/Lib/xml/dom/minidom.py @@ -14,6 +14,7 @@ Todo: * SAX 2 namespaces """ +import codecs import io import xml.dom @@ -49,16 +50,16 @@ class Node(xml.dom.Node): # indent = the indentation string to prepend, per level # newl = the newline string to append use_encoding = "utf-8" if encoding is None else encoding - writer = io.StringIO(encoding=use_encoding) + writer = codecs.getwriter(use_encoding)(io.BytesIO()) if self.nodeType == Node.DOCUMENT_NODE: # Can pass encoding only to document, to put it into XML header self.writexml(writer, "", indent, newl, encoding) else: self.writexml(writer, "", indent, newl) if encoding is None: - return writer.getvalue() + return writer.stream.getvalue().decode(use_encoding) else: - return writer.buffer.getvalue() + return writer.stream.getvalue() def hasChildNodes(self): if self.childNodes: |