On Fri, 31 Aug 2007 12:53:36 +0000, Sönmez Kartal wrote: > On 31 A ustos, 04:24, Steven Bethard <[EMAIL PROTECTED]> wrote: >> Snmez Kartal wrote: >> > I've had an encoding issue and solved it by >> > "sys.setdefaultencoding('utf-8')"... >> >> > My first try wasn't successful since setdefaultencoding is not named >> > when I imported sys module. After, I import sys module, I needed to >> > write "reload(sys)" also. >> >> > I wonder why we need to call "reload(sys)" to get setdefaultencoding >> > named? >> >> sys.setdefaultencoding is purposely deleted from the sys module after >> it's loaded because you really shouldn't be using it. The reload() call >> restores the deleted attribute. >> >> If you'd like a less brittle solution to your encoding issue, explain >> what the issue was, and people here can probably help you find a better >> solution. > > I was using the XMLBuilder(xmlbuilder.py). I'm writing XML files as > "f.write(str(xml))". At execution of that line, it gives error with > description, configure your default encoding...
This doesn't help us that much. What is `f` here and what is `xml`? > This is the part of xmlbuilder.py which raises the error. > > try: > if self.pretty: > # tabs are evil, so we will use two spaces > outstr = self._dom.toprettyxml(" > ",encoding=self.encoding) > else: > outstr = self._dom.toxml(encoding=self.encoding) > except UnicodeDecodeError: > sys.stderr.write('Decoding Error: You must configure > default encoding\n') > sys.exit() So there is an attribute `self.encoding` on that object. Is it set? What encoding is it? And do you put byte strings with values outside ASCII into your XML or unicode strings? Ciao, Marc 'BlackJack' Rintsch -- http://mail.python.org/mailman/listinfo/python-list