2010-07-23 4 views
36

저는 JSON의 새로운 기능을 사용하고 있지만 이제는 Flash ActionScript 3.0에 JSON을 사용해야합니다. 그래서 JSON 용 lib를 하나 발견했고 Deserialize라는 용어를 보았습니다. & 이것이 의미하는 바를 직렬화합니다.JSON의 비 직렬화 및 직렬화,

답변

83

JSON은 문자열로 된 개체를 인코딩하는 형식입니다. Serialization은 객체를 해당 문자열로 변환하는 것을 의미하며 역 직렬화는 역 동작입니다.

데이터를 전송하거나 파일에 저장할 때 데이터는 바이트 문자열이어야하지만 복잡한 개체는이 형식으로는 거의 없습니다. 직렬화는 이러한 복잡한 객체를 이러한 용도로 사용할 수 있도록 바이트 문자열로 변환 할 수 있습니다. 바이트 문자열이 전송 된 후 수신자는 바이트 문자열에서 원래 개체를 복구해야합니다. 이것을 비 직렬화라고합니다.

말, 당신은 객체 문자열로 변환됩니다 JSON으로 직렬화

{foo: [1, 4, 7, 10], bar: "baz"} 

에게 있습니다

저장 또는 어디서나 와이어를 통해 전송 될 수있다
'{"foo":[1,4,7,10],"bar":"baz"}' 

. 그런 다음 수신자는이 문자열을 deserialize하여 원래 객체를 되돌릴 수 있습니다. {foo: [1, 4, 7, 10], bar: "baz"}.

+1

파이썬으로 어떻게 직렬화하고 역 직렬화합니까? 어떤 아이디어? –

+0

@kennytm - 나는 전선으로 물건을 보내는 것에 대해 머리를 감싸려고 노력하고있다. 내가 바이너리 인코딩을 사용하는지 아니면 json, xml 또는 proto buf를 사용하는지에 관계없이 데이터는 항상 바이트로 있어야만 전선을 통해 전송 될 수 있습니다. 그게 사실이야? – Nirmal

+0

@Nirmal 예. ___ – kennytm