본문 바로가기
C#

바이너리 파일 저장

by 캡틴노랑이 2015. 8. 19.
반응형

텍스트가 아닌 바이너리 형태로 저장했다가 다시 불러온다.

 

 

 

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

댓글