반응형
Class 를 File 로 저장/로드
대상 class
일단 아래와 같은 class 가 있고,
이 class 를 file 로 저장하려고 하면, 상단에 [Serializable] 을 붙혀줍니다.
[Serializable] // 추가
public class CateInfo
{
public CateInfo(string name, string link, int depth)
{
this.name = name;
this.link = link;
this.depth = depth;
}
public string name { get; set; }
public string link { get; set; }
public int depth { get; set; }
}
using 및 선언
- 사용 할 class에서
// 상단에
using System.Runtime.Serialization.Formatters.Binary;
// class 안에
private BinaryFormatter binaryFormatter = new BinaryFormatter();
사용
- Class to File
public void saveToFile(CateInfo cateInfo, string path)
{
if (File.Exists(path))
File.Delete(path);
using (Stream stream = File.Open(path, FileMode.Create))
binaryFormatter.Serialize(stream, cateInfo);
}
- File to Class
public CateInfo loadTempData(String path)
{
if (File.Exists(path))
{
using (Stream stream = File.Open(path, FileMode.Open))
{
return (CateInfo)binaryFormatter.Deserialize(stream);
}
}
throw new System.Exception("File not found! : " + path);
}
(혹시 오타있면 알려주세요~ XD)
728x90
반응형
'C# 기술' 카테고리의 다른 글
[Selenium] “Element Is Not Clickable at Point” 해결방법 (0) | 2021.08.29 |
---|---|
[C#] Tuple 사용 방법 (0) | 2021.06.01 |
[LocalDB] Table key column Auto Increase 설정하기 (0) | 2020.11.06 |
[log4net] Visual Studio 2019 에서 log4net 사용하기 (0) | 2020.11.03 |
[WinForm] Visual Studio 2019 에서 mdb 사용하기 #LocalDB (0) | 2020.11.03 |
댓글