2012-08-20 1 views
1

비트 맵에서 byte[] array이 있습니다. 나는 통해 파일에 저장 수 :배열의 값을 저장하고 다른 변수의 값을 하드 드라이브에 저장합니다.

File.WriteAllBytes("path&fileName", byte[]arrayName); 

등 한마디로 , 내가 집합 데이터 또는 그룹 a를 저장 어떻게 이름, 원래의 위치 등이 byte[] array를 참조하는 다른 변수가있다 비트 맵 참조 값을 저장하기 위해 집합에 몇 개의 변수가 있습니까?

(data = byte[], name=string, loctionX = int, locationY = int, Width=int ....etc) 

이 작업은 데이터베이스 필드에만 속하거나 다른 방법입니까? 예를 들어 XML 또는 linq을 사용할 수 있습니까? (내 생각에) (: 내 프로젝트에서 데이터베이스 (SqlDatasource 연결 ... 등)를 사용하는 것을 피하려고합니다.

답변

1

저장하고 일련 화하려는 값에 대해 POCO를 선언해야합니다. 예를 들어 :

public class Foo { 
    public byte[] Data {get;set;} 
    public string Name {get;set;} 
    public int LocationX {get;set;} 
    // ... etc 
} 

지금 어떤 시리얼 라이저를 선택, XmlSerializer를, DataContractSerializer, protobuf - 그물, 경우 BinaryFormatter, JSON.NET - 모든이 할 것, 그리고 읽기/디스크에 /에서 인스턴스를 작성하는 것을 사용 예를 들면 다음과 같습니다.

Foo obj = ... 
using(var file = File.Create(path)) { 
    var ser = new XmlSerializer(typeof(Foo)); 
    ser.Serialize(file, obj); 
} 
+0

나는 XmlSerializer, DataContractSerializer, protobuf-net, BinaryFormatter .. 많이 고마워. – LoneXcoder