텍스트가 아닌 바이너리 형태로 저장했다가 다시 불러온다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
namespace ConsoleApplication1
{
[Serializable]
public class PointData
{
public int groupID { get; set; }
public float width { get; set; }
public int transparency { get; set; }
public string memo { get; set; }
}
[Serializable]
public class DataSave
{
public string str { get; set; }
public List<PointData> lines { get; set; }
}
class Program
{
static void Main(string[] args)
{
DataSave ds = new DataSave();
ds.lines = new List<PointData>();
ds.str = "ssss";
ds.lines.Add(new PointData { groupID = 1, width = 11, transparency = 111, memo = "a" });
ds.lines.Add(new PointData { groupID = 2, width = 22, transparency = 222, memo = "b" });
ds.lines.Add(new PointData { groupID = 3, width = 33, transparency = 333, memo = "c" });
ds.lines.Add(new PointData { groupID = 4, width = 44, transparency = 444, memo = "d" });
ds.lines.Add(new PointData { groupID = 5, width = 55, transparency = 555, memo = "e" });
ds.lines.Add(new PointData { groupID = 6, width = 66, transparency = 666, memo = "f" });
FileStream fs = new FileStream("test.bin", FileMode.Create, FileAccess.Write);
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, ds);
fs.Close();
DataSave dso =new DataSave();
FileStream os = new FileStream("test.bin", FileMode.Open, FileAccess.Read);
BinaryFormatter bf2 = new BinaryFormatter();
dso = (DataSave)bf.Deserialize(os);
os.Close();
}
}
}
'C#' 카테고리의 다른 글
소켓 관련 정보 블로그 (0) | 2015.08.21 |
---|---|
날짜 표현 형식 (0) | 2015.08.19 |
winform 참고 사이트 (0) | 2015.08.19 |
Basic Synchronization(동기화) (0) | 2015.08.19 |
파일 생성 개발 프로세스 (0) | 2015.08.19 |
댓글