如何在Visual Studio 2017中将数据写入/读取到文件

时间:2017-08-04 20:35:46

标签: c# visual-studio win-universal-app visual-studio-2017

我在C#Universal Windows中创建应用程序,我想知道如何将数据写入文件以便以后可以从中读取。我正在考虑创建一个类System.Serializable,然后将该类的对象作为文件写入用户的设备,这样我就可以将这些文件作为对象再次读回,但我不知道如何去做那件事。

3 个答案:

答案 0 :(得分:0)

使用File课程。它具备您需要的所有功能 - 打开文件,阅读其内容,编辑,保存或删除。 来自MSDN:

public static void Main()
{
    string path = @"c:\temp\MyTest.txt";
    if (!File.Exists(path))
    {
        // Create a file to write to.
        using (StreamWriter sw = File.CreateText(path))
        {
            sw.WriteLine("Hello");
            sw.WriteLine("And");
            sw.WriteLine("Welcome");
        }
    }

    // Open the file to read from.
    using (StreamReader sr = File.OpenText(path))
    {
        string s = "";
        while ((s = sr.ReadLine()) != null)
        {
            Console.WriteLine(s);
        }
    }
}

答案 1 :(得分:0)

在.NET框架中,有一个名为System.IO的命名空间。

System.IO.StreamWriter writer = new System.IO.StreamWriter(filepath);

您可以使用System.IO命名空间中的StreamWriter写入文件。构造函数只是将一个字符串变量引入要写入的文件的路径。然后你可以使用StreamReader(如此):

System.IO.StreamReader reader = new System.IO.StreamReader(filepath);

再次读回文件。

答案 2 :(得分:0)

以下是一个例子:

class Program
{
    [Serializable]
    public class MyClass
    {
        public string Property1{ get; set; }
        public string Property2 { get; set; }
    }

    static void Main(string[] args)
    {
        var item = new MyClass();
        item.Property1 = "value1";
        item.Property2 = "value2";

        // write to file
        FileStream s = new FileStream("myfile.bin", FileMode.Create);
        BinaryFormatter f = new BinaryFormatter();
        f.Serialize(s,item);
        s.Close();

        // read from file
        FileStream s2 = new FileStream("myfile.bin", FileMode.OpenOrCreate,FileAccess.Read);

        MyClass item2 = (MyClass)f.Deserialize(s2);
    }
}