C# Saving Data and Objects Into Files
C# Saving Data and Objects Into Files
1. Introduction
In C#, saving data and objects to files is a common requirement for applications that need to persist information. This document covers various
methods such as text files, JSON, XML, and binary serialization/deserialization.
class Program
{
static void Main()
{
string filePath = "data.txt";
string content = "Hello, this is a text file!";
File.WriteAllText(filePath, content);
}
}
2.2 Reading from a Text File
string readContent = File.ReadAllText("data.txt");
Console.WriteLine(readContent);
class Program
{
static void Main()
{
Person person = new Person { Name = "John", Age = 30 };
string json = JsonSerializer.Serialize(person);
File.WriteAllText("person.json", json);
}
}
[Serializable]
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main()
{
Person person = new Person { Name = "Alice", Age = 25 };
using (FileStream fs = new FileStream("person.dat", FileMode.Create))
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(fs, person);
}
}
}
[Serializable]
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main()
{
Person person = new Person { Name = "Emma", Age = 22 };
XmlSerializer serializer = new XmlSerializer(typeof(Person));
using (TextWriter writer = new StreamWriter("person.xml"))
{
serializer.Serialize(writer, person);
}
}
}
class Person
{
[JsonInclude]
private string Secret = "This is a secret";
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main()
{
Person person = new Person { Name = "John", Age = 30 };
string json = JsonSerializer.Serialize(person, new JsonSerializerOptions { IncludeFields = true });
Console.WriteLine(json);
}
}
[Serializable]
class Person : ISerializable
{
private string Secret = "Hidden Info";
public string Name { get; set; }
public int Age { get; set; }
public Person() { }