Base64 weirdness

Maarten Koopmans maarten.koopmans at
Sat Oct 29 12:30:51 EDT 2011

You're right, but i've found that other languages don't ignore them,
whether they are c-based string wrapped scripting languages or compile to
the JVM for instance.....

I think LC follows the RFC better, but not necessarily better interoprable.
Anuway, another recent thread turned out to have a solution - copy 72
chars, skip 1, loop


On Saturday, October 29, 2011, Richard Gaskin <ambassador at>
> Maarten Koopmans wrote:
>> Sorry for the cross-post from the forum, but this (silly) thing is
>> becoming a blocker.
>> A (to me) subtle question, which has to do with the base64 encoding. A
>> base 64 encoded binary needs to be a multiple of 4. It' what all other
>> implementation seem to do as well (tested Scala (JVM) and REBOL (C
>> underneath)).
>> But if I test with a standalone file like this:
>> put "/Users/maartenkoopmans/Desktop/pw.jpg" into tFilename
>> put base64encode(url("binfile:" & tFilename)) into tImage
>> answer "file read and converted"
>> answer the length of tImage
>> I consistently get 7758 as length in Livecode, and 7652 in other
>> implementaions (REBOL, Scala). The LC form has two bytes to much to be
>> multiple of 4, and way more than the others, which are multiples of
>> fours. So how do you get your data back then to display the image in a
>> different environment (say, as webserver....)?
>> Any thoughts appreciated...
> What others wrote about line endings is likely the explanation.
> But since base64 implementation should ignore line endings, how is this a
blocker for you?  What software is not unencoding those correctly?
> --
>  Richard Gaskin
>  Fourth World
>  LiveCode training and consulting:
>  Webzine for LiveCode developers:
>  LiveCode Journal blog:
> _______________________________________________
> use-livecode mailing list
> use-livecode at
> Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:

More information about the Use-livecode mailing list