I am using this code to store my class:

```
FileStream stream = new FileStream(myPath, FileMode.Create);
XmlSerializer serializer = new XmlSerializer(typeof(myClass));
serializer.Serialize(stream, myClass);
stream.Close();

```

This writes a file that I can read alright with `XmlSerializer.Deserialize`. The generated file, however, is not a proper text file. `XmlSerializer.Serialize` doesn't store a BOM, but still inserts multibyte characters. Thus it is implicitely declared an ANSI file (because we expect an XML file to be a text file, and a text file without a BOM is considered ANSI by Windows), showing ö as Ã¶ in some editors.

Is this a known bug? Or some setting that I'm missing?

Here is what the generated file starts with:

```
<?xml version="1.0"?>
<SvnProjects xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

```

The first byte in the file is hex 3C, i.e the `<`.