[Newbies] storeString vs. printString

Bert Freudenberg bert at impara.de
Tue Jul 4 09:25:30 UTC 2006


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 at 3. #four}.
	a storeString -> a printString

which gives

	 '(Array with: 1 with: 2 at 3 with: #four)' -> '#(1 2 at 3 #four)'

Only the storeString can be correctly read back in

	Object readFrom: a storeString

- Bert -



More information about the Beginners mailing list