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