Parse / write XML without changing character encoding

I need to change some things inside an XML document, so I’m reading it
with REXML, changing the attributes I need and writing back.

In the process I see that the character encoding changes all over.

  1. UTF-8 encoded characters get decoded.
  2. HTML escape are un-escaped (like & becoming &, > becoming

Is there a way to tell REXML not to do this? Just leave everything
inside the texts as it was?