C# base64 d'encodage/de décodage de la sérialisation des objets en question

Je suis en utilisant la sérialisation et la désérialisation en C# pour mon Projet (qui est une Classe).
Ils sont sérialisés et enregistré dans un fichier XML. Lors du chargement du Projet, tout va bien.

Maintenant, je suis en train de coder le sérialisé Projet en Base64 et puis enregistrez le fichier qui va bien aussi. La première ligne du fichier (avant codé!) ressemble à ceci:

<?xml version="1.0" encoding="utf-8"?>
  <Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

Quand je décoder le fichier, il y a un ? ajouté à l'avant de la ligne:

?<?xml version="1.0" encoding="utf-8"?>
  <Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

Le code que j'utilise pour encoder:

byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
        string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
        return returnValue;

Et le code de décodage:

byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
        string returnValue = System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
        return returnValue;

Ce que cela peut être et comment je peux résoudre ce problème?

OriginalL'auteur MysticEarth | 2009-12-24