如何以二进制格式加载文件

问题描述 投票:-2回答:1

我已经使用了这段代码并尝试加载文本文件。但它有一个错误。 “loaddate()”中显示的错误我已经通过了returen值//这里我尝试创建一个列表并将数据上传到列表中。

public partial class RegisterUser : Form
{
    List<Log> list = null;

    public RegisterUser()
    {
        InitializeComponent();
      //  list = new List<Log>();
        list = loadData();
    }

    public List<Log> loadData() 
    {
        List<Log> lst = null;
        if (File.Exists("Login.bin"))
        {
            Stream stream = File.Open("Login.bin", FileMode.Open);
            BinaryFormatter bformatter = new BinaryFormatter();
            lst = (List<Log>)bformatter.Deserialize(stream);
            stream.Close();

        }
        else
        {
            lst = new List<Log>();
        }
        return lst;
    }
}
c# windows oop for-loop
1个回答
1
投票

也许你想要一些解释你的问题:

你有一个公共课RegisterUser。在这个公共课中,你有一个公共功能loadData。因此返回值在所有其他类中都可见。

但是返回一个类型,这个类型在所有其他类中都不可见。

那很糟。您可以调用该函数,但无法看到返回类型。这就是为什么Log课程也必须公开。

如果您的类RegisterUser将是privateinternal,那么Log类可以具有相同的访问类型。

希望这能帮助你下一次。

© www.soinside.com 2019 - 2024. All rights reserved.