바이트 []를 해시 타이블의 배열 목록으로 변환하는 방법은 무엇입니까?
문제
누군가가 C#을 사용하여 BYTE []를 해시블의 배열 목록으로 어떻게 변환 할 수 있습니까? (바이트 []는 이전에 직렬화 된 해시 블의 배열 목록을 나타냅니다)
참고 : Binaryformatter를 제공하지 않는 Windows Mobile에서 실행 중입니다.
해결책
또한 데이터베이스 API에 의해 ArrayList가 자동으로 BYTE []로 자동 변환됩니다.
솔직히, 당신은 갈 것입니다 가지다 실제 직렬화 API를 찾으려면이 데이터를 재구성 할 가능성이 있습니다. 아마도있을 것입니다 BinaryFormatter
, 이는 악명 높고 버전을 통합하지 못한 것입니다.
만약 너라면 필요 데이터를 이진으로 저장하고 장기 (데이터베이스)와 플랫폼 (CF) 사이를 사용하려면 적절한 직렬 라이저를 사용해야합니다. 예를 들어, protobuf-net 작동 할 것이다 원칙적으로 (비록 비록 비록 좋아하지는 않지만 ArrayList
, 선호 타이핑 List<T>
등).
데이터 인 경우 ~이다 현재 저장되었습니다 BinaryFormatter
, 최선의 방법은 현재 시스템을 사용하여 추출하여 더 적합한 직렬화 형식으로 (아마도 다른 열 또는 테이블로) 다시 포장하는 것입니다.
다른 팁
"이전에 직렬화 된"이라고 말할 때 Serialized BinaryFormatter
"? 그렇다면, 아니요 - 필요할 것입니다 BinaryFormatter
또한 필사적으로. 컴팩트 프레임 워크가이를 지원하지 않으면 기본적으로 운이 좋지 않습니다. 직렬화 형식이 어딘가에 문서화되어 있다면 (그것이 확실하지 않은지 확실하지 않습니다) ~할 수 있었다 나만의 글을 쓰십시오 BinaryFormatter
-하지만 아마도 다소 까다로울 것입니다.
대신, 직렬화/사제 화에 필요한 모든 곳에서 지원되는 직렬화 형식을 선택해야합니다.