关于反序列化XML的有关问题

关于反序列化XML的问题
我将一个对象用XmlSerializer序列化到一个本地文件后,再将其反序列化为对象的时候出错。
An unhandled exception of type 'System.InvalidOperationException' occurred in System.Xml.dll
Additional information: There is an error in XML document (1, 2).

这是我的Person代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FirstConsole
{
    [Serializable]
    public class Person
    {
        private string _name;
        public string Name
        {
            set
            {
                this._name = value;
            }
            get
            {
                return this._name;
            }
        }

        private int _age;
        public int Age
        {
            set
            {
                this._age = value;
            }
            get
            {
                return this._age;
            }
        }

        private string _address;
        public string Address
        {
            set
            {
                this._address = value;
            }

            get
            {
                return this._address;
            }
        }

        public Person(string _name, int _age, string _address)
        {
            this.Name = _name;
            this.Age = _age;
            this.Address = _address;
        }

        public Person()
        {
            this.Name = "Sheldon";
            this.Age = -1;
            this.Address = "NONE";
        }

        public void PrintInfo()
        {
            System.Console.WriteLine("姓名:" + this.Name + "\t年龄:" + this.Age + "\t地址:" + this.Address);
        }

    }
}


这是我的Main代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Data.SqlClient;
using System.Data;
using System.Data.Sql;
using System.Configuration;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization.Formatters.Soap;
using System.Xml.Serialization;

namespace FirstConsole
{
    class Program
    {
        static void Main(string[] args)
        {
            #region XML
            Person lyk = new Person("狗蛋", 26, "重庆市沙坪坝区--Xml");
            using (FileStream fs = new FileStream("lyk.xml", FileMode.OpenOrCreate))
            {
                XmlSerializer xs = new XmlSerializer(typeof(Person));
                xs.Serialize(fs, lyk);
            }

            Console.WriteLine("Serialized in BinaryFormat");

            using (FileStream fs = new FileStream("lyk.soap", FileMode.Open))
            {
                XmlSerializer xs = new XmlSerializer(typeof(Person));
                Person lykNew = (Person)xs.Deserialize(fs);
                lykNew.PrintInfo();
            }
            #endregion
        }
    }
}


这是我序列化后在本地文件中打开得到的xml文件内容
<?xml version="1.0"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Name>狗蛋</Name>
  <Age>26</Age>
  <Address>重庆市沙坪坝区--Xml</Address>
</Person></Person>on>

------解决思路----------------------
你前面序列化保存的文件是 lyk.xml ,后面反序列化打开的是 lyk.soap,确定这个lyk.soap是xml文件么?
------解决思路----------------------
</Person></Person>on>
这个怎么回事?序列化后xml格式不对吧。