내 앱을 닫을 때 300KB의 사전을 직렬화하려고했습니다. 디스크 공간이 없기 때문에 292KB 만 쓸 수 있습니다. 거기에있는 모든 요소를 성공적으로 deserialize하는 방법이 있습니까?직렬화가 완료되지 않은 이진 직렬화 사전을 deserialize 또는 복구하는 방법?
저는 BinaryFormatter를 사용했고 일부 요소를 잃어 버리면 전체 사전을 잃는 것보다 낫습니다.
나는이 예외 얻을 직렬화하는 경우 : 정말 구현에 대한 많은 지식을 필요로 바이너리 스트림을 떨어져 따기
e.Message "The input stream is not a valid binary format. The starting contents (in bytes) are: 20-01-20-20-20-FF-FF-FF-FF-01-20-20-20-20-20-20-20 ..."
감사합니다. 당신은 scrobbling에 의하여 무엇을 의미합니까? 정규식을 사용하는 것과 같은 의미입니까? 내가 그들을 추출하고 정규식을 사용하여 새 파일에 추가 할 수있는 ASCII 형식으로 필요한 정보를 볼 수 있지만 신뢰할 수 있는지 확실하지 않은가요? 또한 독점적이라고 말하면 코드가 현명합니까? 리플렉터를 사용하여 어떻게했는지 알 수 있습니다. 또한 어떤 시리얼 라이저가이를 가능하게할까요? XML? (그들은 사전을 지원하지 않지만) –
"scrobbling"이란 말은 난장판 일을 의미합니다. 예, 반사경을 사용할 수 있습니다. 그게 훨씬 쉬워지는지는 모르겠다. 대부분의 텍스트 형식은 쉽게자를 수 있습니다. 마찬가지로 오픈 포맷을 가지고있는 몇몇 바이너리. –