On Apr 21, 2:25 pm, Peter Otten <__pete...@web.de> wrote:

> Are you sure that your script has
>
> str = u"..."
>
> like in your post and not just
>
> str = "..."

No :-)

str=u"<?xml version=\"1.0\" encoding=\"utf-8\"?><elements><elem attrib=
\"ó\"/></elements>"
doc=xml.dom.minidom.parseString( str.encode("utf-8") )
xml=doc.toxml( encoding="utf-8")
file=codecs.open( "foo.xml", "w", "utf-8" )
file.write( xml )
file.close()

fails:

  File "./demo.py", line 12, in <module>
    file.write( xml )
  File "/usr/lib/python2.5/codecs.py", line 638, in write
    return self.writer.write(data)
  File "/usr/lib/python2.5/codecs.py", line 303, in write
    data, consumed = self.encode(object, self.errors)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position
62: ordinal not in range(128)

but dropping the encoding argument to doc.toxml() seems to finally
work.  I'd be curious to know why the code you posted (that worked for
you) didn't for me, but at this point I'm just happy with something
functional.  Thank you very kindly!
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to