-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFiles3.cs
More file actions
48 lines (40 loc) · 1.43 KB
/
Files3.cs
File metadata and controls
48 lines (40 loc) · 1.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using System;
using System.Collections.Generic;
using System.Linq;
//Serialize and Deserialize
using System.Runtime.Serialization; //IFormatter
using System.Runtime.Serialization.Formatters.Binary; //BinaryFormatter
using System.Text;
using System.Threading.Tasks;
namespace CSharpProgramming
{
/// <summary>
/// Serialize and Deserialize the contents in the file
[Serializable]
internal class Files3
{
public int EmpID;
public string EmpName;
public string Designation;
public static void Main()
{
Files3 files3 = new Files3();
files3.EmpID = 100;
files3.EmpName = "John";
files3.Designation = "HR";
//Base->Derived
IFormatter formatter = new BinaryFormatter();
Stream stream = new FileStream(@"E:\SerDeSer.txt", FileMode.Create, FileAccess.ReadWrite);
//Serialize->BinaryFormatter->implemented from IFormatter
formatter.Serialize(stream, files3);
stream.Close();
//Deserialize
stream = new FileStream(@"E:\SerDeSer.txt", FileMode.Open, FileAccess.ReadWrite);
//(Files3)-Typecasting the content into Files3 instance/object
Files3 f3=(Files3)formatter.Deserialize(stream);
Console.WriteLine(f3.EmpID);
Console.WriteLine(f3.EmpName);
Console.WriteLine(f3.Designation);
}
}
}