Thanks. I actually was using jsonImport() with these strings successfully (no wrapper required) but it has a bug on Android that makes it unuseable. That's what caused the problem in the first place, because jsonToArray() doesn't deal with escape sequences.

So I went ahead and wrote a decoder for escaped sequences that works, but found out I still can't use it. If I replace the escapes before using jsonToArray(), jsonToArray throws an error; it can't deal with the UTF16 strings. And I can't run my decoder through the keys of the converted array after jsonToArray is finished, because they are already munged into garbage characters by then.

So I'm stuck, I don't see any way to deal with these. I'll put in a bug report about jsonImport() but it will probably be a while before it gets fixed.

I hope someone else has an idea.

On 3/14/17 7:13 PM, Jim Lambert via use-livecode wrote:

Jacque wrote:

I'm dealing with non-English languages, and JSON data retrieved from a
database comes in with unicode escape sequences like this: Eduardo
Ba\u00f1uls.

I need to translate those. I can do it by replacing the "\u" with "0x"
and then using numToCodepoint() to get the UTF16 character. But there
could be many of these in the same string, so I'm looking for a one-shot
command that might just do them all.


JSONImport does it.
If the escaped string is not in JSON format this function will wrap it in JSON 
then let JSONImport do its thing.

put deEscape("Eduardo Ba\u00f1uls")

function deEscape pEscapedText
        put "{'1':'**dummy**'}" into temp
        replace "**dummy**" with pEscapedText in temp
        replace "'" with quote in temp
        put JSONImport(temp)into pArray
        return pArray[1]
end deEscape

Roundabout but does the trick.

Jim Lambert
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode



--
Jacqueline Landman Gay         |     jac...@hyperactivesw.com
HyperActive Software           |     http://www.hyperactivesw.com

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to