Not really. The only differences between the encoded version and the unencoded version are:

The characters you used as delimiters;

'=' & "\n" versus ':' & "\n".

The character values you can transmit.

With the encoded version being far more restrictive, without really making anything more secure. It could also come back to bite you if you suddenly have the need to deal with data elements that contain punctuation.

Eg c:\... or firstname.lastname@someplace.com and many others.

The time you spend encoding and decoding.

Is there a better way to do this?

If you are looking to hide your stuff from the bad guys, use proper encryption.

If you're looking for a reliable protocol, prefix your transmissions with a count value.

This has many advantages. Being able to read a set number of bytes to get the count that tells you how many bytes to wait for on the next read can be a real boon to timelyness.

When putting a smiley right before a closing parenthesis, do you:

Use two parentheses: (Like this: :) )
Use one parenthesis: (Like this: :)
Reverse direction of the smiley: (Like this: (: )
Use angle/square brackets instead of parentheses
Use C-style commenting to set the smiley off from the closing parenthesis
Make the smiley a dunce: (:>
I disapprove of emoticons
Other