Am 04.07.2006 um 10:17 schrieb Mathieu SUEN:
Hi squeakers,
I have an extremly simple question.
What is the diffrence between #storeString and #printString?
#printString (implemented by #printOn:) creates a human-readable description of your object. #storeString (or, more precisely, #storeOn:) is a machine-parsable serialization of your object. "Storing" writes out code that recreates the object when later read back in (using #readFrom:). So a test for correctness of storing would mean to compare the original and the read-back object.
In the case of literal objects, both representations are usually equivalent. But try this:
a := {1. 2@3. #four}. a storeString -> a printString
which gives
'(Array with: 1 with: 2@3 with: #four)' -> '#(1 2@3 #four)'
Only the storeString can be correctly read back in
Object readFrom: a storeString
- Bert -