C# 使用序列化将数据读写到记事本中

C# 使用序列化将数据读写到记事本中,c#,serialization,read-write,C#,Serialization,Read Write,我在使用序列化将数据读写到文件记事本时遇到问题 基本上就是登录和注册 我会在这里给出我的代码 这是注册表格的一部分: public partial class formSignUp : Form { List<data> game = new List<data>(); data dt = new data(); public formSignUp() { Initializ

我在使用序列化将数据读写到文件记事本时遇到问题 基本上就是登录和注册 我会在这里给出我的代码 这是注册表格的一部分:

public partial class formSignUp : Form
    {
        List<data> game = new List<data>();
        data dt = new data();

        public formSignUp()
        {
            InitializeComponent();
        }        

        private void write()
        {
            try
            {
                using (Stream stream = File.OpenWrite("game.txt"))
                {
                    BinaryFormatter bin = new BinaryFormatter();
                    bin.Serialize(stream, dt);
                }
            }
            catch (IOException)
            {

            }
        }

        private void butRegister_Click(object sender, EventArgs e)
        {
            write();
            dt = new data(tbUName.Text, tbPass1.Text);
            game.Add(dt);
        }
    }
我将文件记事本放在名为“game.txt”的文件夹“bin”中

问题是,每次我调用“write()”时,写入文件“game.txt”的字符都是非常奇怪的字符。到目前为止,我得到了:

ÿÿÿÿ          <Login, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null   

这是因为您使用的是BinaryFormatter,它输出二进制数据。您应该使用其中一个文本格式化程序。虽然它可能不适合你,但也有很多

ÿÿÿÿ          <Login, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null