2011-02-02 4 views
2

데이터를 XML로 유지 한 다음 한 문화권에서 직렬화 된 데이터를 다른 문화권에서 구문 분석 할 수있는 방식으로 다시 읽어야합니다.문화적으로 영향을받지 않고 데이터를 직렬화/역 직렬화하는 올바른 방법은 무엇입니까?

내가보기에 이것을 수행하는 데는 두 가지 방법이 있습니다. 나는 모든 파싱/토 스트링/등을 확실히 할 수있다. 메서드가 불변의 문화권을 사용하고 있거나, 스레드의 문화권을 불변으로 설정하고, 모든 (de) 직렬화를 수행 한 다음, 이전의 모든 상태로 되돌릴 수 있습니다.

첫 번째 접근 방식이 올바른 것으로 생각되지만 스레드 문화를 전환하는 것이 더 쉽고 버그가 발생하기 쉬운 것으로 보입니다. 첫 번째 접근 방식이 선호되는 이유가 있습니까? 아마 내가 모르는 다른 접근법이 있습니까?

답변

2

XmlWriter classWriteValue 방법과 XmlReader classReadContentAs 방법을 사용하십시오.

XmlConvert class의 방법을 사용할 수도 있습니다.

이러한 모든 방법은 문화권에 독립적 인 XML 표준 형식을 생성합니다.

+0

저는 여기 알고 있지만, 여기에 요점이 있기 때문에 수동으로 문자열 변환을해야하는 곳이 있습니다. 또한 여러 직렬화 도우미가 나를 위해이 작업을 수행하더라도 올바른 방법을 직접 이해하고 싶습니다. – tempy

+0

@tempy : 올바른 방법입니다. –

관련 문제