c#有一种方法可以将类的实例写入txt文件

  • 本文关键字:实例 文件 txt 方法 一种 c#
  • 更新时间 :
  • 英文 :


我是c#新手,所以我不确定这是不是一个愚蠢的问题,但是…我有一个类里面有变量

public class A {
string name;
int age;
public A() {
Console.WriteLine("Input name");
name = Console.ReadLine();
//...
}
}

,然后创建这个类的实例

static void Main(string[] args) {
//some code
A abc = new A();  
}

,我想将实例保存为TXT文件。有点像游戏中的保存/加载系统

我尝试使用xml, streamWriter等解决方案,但所有这些都只会在我的程序中导致更多错误

我甚至不确定这是否可能,但是,谢谢

是的,这是可能的-它被称为序列化。目前。net从。net Core 3.0开始就支持System.Text.Json标准库命名空间。

例如,要将对象序列化为JSON文档,可以在字段中使用JsonPropertyName属性:

using System.Text.Json.Serialization;
public class A
{
[JsonPropertyName("name")]
public string Name { get; set; }
[JsonPropertyName("age")]
public int Age { get; set; }
public A()
{
Console.WriteLine("Input name");
name = Console.ReadLine();
//...
}
}

并将对象序列化为json格式的string:

using System.Text.Json;
A someObj = new();
// some magic
string jsonContent = JsonSerializer.Serialize(someObj); // output like this: {"name":"some name","age":29}

现在你只需要把它保存在你的应用程序中指定的正确的文件路径中,以便在需要的时候保存和加载它。

最新更新